存在于嵌套集合中,没有 ID 无法找到?
大家好,另一个 Rails 问题,
当前有一个发票系统行项目的集合。如果添加已存在的项目,我想增加行项目的计数。目前我正在使用存在吗?对集合进行查询,但似乎无论键如何都会返回。
我使用的外键是 item_id,所以我尝试执行 invoice_items.exists?(:item_id => item.id)
这没有返回,所以我将其更改为 Invoice_items.find(:conditions => ["item_id == ?", item.id)
并且我得到了一个返回,如果没有invoiceItem ID,我就无法搜索。
有想法吗?
Hey guys another rails issue,
Currently have a collection that is line items for an invoicing system. I want to increment the count of the line items if I add in an item that already exists. At the moment I'm using an exists? query on the collection but it seems to return regardless of the key.
The foreign key I'm using is item_id, so I try to do invoice_items.exists?(:item_id => item.id)
This wasn't returning, so I changed it to invoice_items.find(:conditions => ["item_id == ?", item.id)
and I get a return that I cannot search without invoiceItem ID.
Ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
应该是
所以你的查询看起来像这样
should be
So your query look like this
您应该只需要执行“或”操作,
如果
,则可以使用该语法,
要使用
model.find
命令 第一个参数需要为:all
,:first
、:last
或您正在搜索的主键。这就是为什么我通常只在搜索 id 时更喜欢使用Model.find
,否则我使用Model.first
、Model.last
>,Model.all
。这样你就知道你会得到什么。you should just need to do either
OR
and you can use the syntax
if you are going to use the
model.find
command the first parameter needs to be:all
,:first
,:last
or the primary key you are searching for. that is why I generally prefer to useModel.find
only if I am searching for an id, otherwise I useModel.first
,Model.last
,Model.all
. That way you know what you are going to get.