- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我观察到 ActiveRecord delete_all 忽略了连接表条件。这是 Rails 社区的已知问题吗?
查询:
DesignPartCategory.joins(:category).where(category: {site_id: INDIA}, designpart_uuid: ['123C']).delete_all
预期结果:
从 designpart_category
中删除 designpart_category
.designpart_uuid
IN ('123C') AND designpart_category
. Category_id
IN(印度);
实际结果:
DELETE FROM `designpart_category` WHERE `designpart_category`.`designpart_uuid` IN (SELECT designpart_uuid FROM (SELECT `designpart_category`.`designpart_uuid` FROM `designpart_category` INNER JOIN `category` ON `category`.`category_id` = `designpart_category`.`category_id` WHERE (category.site_id =INDIA AND designpart_category.designpart_uuid in ('123C'))) __active_record_temp);
当前delete_all操作只是忽略/丢弃连接表条件并执行查询的其余部分。
我假设情况不应该如此,它应该抛出异常而不是忽略连接。请让我们知道您对此的想法/评论。
最佳答案
您的语法似乎有一些拼写错误,请检查一下 -
DesignPartCategory.joins(:category).where("categories.site_id = ? AND categories.designpart_uuid IN (?)", 'INDIA', ['123C']).delete_all
或者你可以尝试这个:-
DesignPartCategory.joins(:category).where(categories: {site_id: 'INDIA', designpart_uuid: (['123C'])}).delete_all
关于mysql - delete_all 是否会忽略基于连接表的条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53755602/
我观察到 ActiveRecord delete_all 忽略了连接表条件。这是 Rails 社区的已知问题吗? 查询: DesignPartCategory.joins(:category).whe
我需要一次删除大量记录,我需要根据另一个模型中与“belongs_to”关系相关的条件来删除。我知道我可以遍历每个条件检查,但是对于我的大记录集,这需要永远,因为对于每个“belongs_to”,它都
我有一个带有以下模型的 rails 3.2.8 应用程序:配置文件和报告。 Profile 有很多 Reports,其中的 Reports 属于一个 Profile 如果我尝试删除特定配置文件的所有报
我正在寻找从表中删除记录的最佳方法。例如,我有一个用户,其用户 ID 跨多个表。我想删除这个用户和所有表中有他 ID 的每条记录。 u = User.find_by_name('JohnBoy') u
我们正在寻找一个命令来删除Rails transaction中的多个记录。为了使其在transaction中触发,我们使用了destroy_all!和delete_all!并收到了method not
尝试获得关于是否可以将 delete_all 限制为 X 条记录的明确答案。 我正在尝试以下操作: Model.where(:account_id => account).order(:id).lim
我有 5 个模型。 服务器,平台,游戏,RetentionReport,DataReport。我正在尝试使用 :dependent => :delete_all,但它不起作用。这是我的模型。 clas
我正在将包含几百行的 CSV 导入到我的 rails 数据库中。 有时用户想要强制覆盖数据,所以我认为最好销毁所有数据并重新开始。 就像是: account.catalog_listings.dele
我正在开发一个具有以下 cucumber 步骤的项目: Given /^no registered users$/ do User.delete_all end 作为一个新的 RoR 用户,这看起
我的类如下,Customer使用单表继承方式从User继承。用户具有属性名称和电子邮件,而订单具有目的地。 class User ' from bin/rails:4:in `require' fro
我的类如下,Customer使用单表继承方式从User继承。用户具有属性名称和电子邮件,而订单具有目的地。 class User ' from bin/rails:4:in `require' fro
我的项目中几乎没有模型。其中有一些:Qualification 和 Curriculum。 Qualification 有 child (类(class))。我想确保当我删除 Qualificatio
我有一个包含 900 万条记录的表。我定期将此数据同步到第三方。我保留了一个列,告诉特定行是否已经同步。 现在我需要删除将近 600 万 同步行,我不确定是否运行 Model.where(:sync_
在rails guides中是这样描述的: Objects will be in addition destroyed if they’re associated with :dependent =>
你知道这个练习:一些无效的数据在生产数据库中弹出,你必须摆脱它。您在生产服务器上启动 Rails 控制台并输入查询: Foo.where(bar: 'baz').all 您查看返回的数据,这是您需要删
我正在为我的 user 定义模式和 role Phoenix应用程序中的模型。角色has_many用户和用户 belongs_to一名角色。似乎有 3 种不同的 on_delete:选项:nilify
我在 Rails 控制台中使用 Model.delete_all 来删除表,但我注意到 id 编号不会重置,它们只是从停止的地方开始。如何删除表并使 ids 从 1 开始? 这实际上没什么大不了的,我
我正在尝试创建一个 rake 任务来更新一些数据。问题是它有点慢所以我想我会让它多线程来加速它。问题是当我在 1 个线程中运行它时它很好但是当我在 5 个线程中运行它时我有时只得到 rake abor
我在我的网站上为我的用户消息线程功能使用“acts_as_tree”插件。我有一种方法可以删除选定的消息。这些消息实际上并没有被删除。它们的 sender_status 或 recipient_sta
我是一名优秀的程序员,十分优秀!