【发布时间】:2019-04-09 07:25:22
【问题描述】:
有没有办法在没有id 列的情况下销毁表中的 Rails Active Record 条目?
我知道有几种方法可以使用ids 销毁 Active Record,如下所示:
User.destroy(1)
User.first.destroy
但是,如果没有id,我似乎无法找到这样做的方法。我检查了this link 中的建议,但无济于事。
理想情况下,我的想法是这样的:
User.where(name: "Dummy").destroy
# Returns this:
# ArgumentError (wrong number of arguments (given 0, expected 1))
我知道通常不鼓励在 Rails 中创建没有id 列的表。如果可能的话,我想为这个特定的表删除它,但如果事实证明没有解决方法,我愿意制作该列。提前致谢。
【问题讨论】:
-
旁注...当您运行查询并且您期望有一条记录时,您可以在关系上调用
.first来获取它。 @Marek 的答案就是您在这里寻找的。span>
标签: ruby-on-rails activerecord destroy