簡體   English   中英

在Rails中,為什么我希望自己的finder方法只返回一個結果呢?

[英]In rails, why is my finder method only returning one result when I want it to return all of them?

我正在使用Rails 5.0.3。 如何使用查找器查找所有匹配的記錄? 我有

my_obj = self.find_by_name_and_day_and_user_id(name, day, user_id)

但它只返回一個結果。 當我運行時打開SQL,它添加了一個

 LIMIT 1

條款。 如何編寫一個查找程序方法,該方法將返回所有結果,而不僅僅是一個?

您應該使用where ,就像這樣

self.where(name: name, day: day, user_id: user_id)

find_by方法始終返回第一條匹配記錄。 因此,您應該使用where子句,該子句將返回所有匹配的記錄。

my_obj = self.where(name: name, day: day, user_id: user_id)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM