インスタンスがスコープ内にある場合は、Railsの?
-
22-09-2019 - |
質問
私が使用しているが、3レールと私は特定のインスタンスがスコープ内にあるかどうかを確認することができないよう、ここに参照してください。
p = Post.find 6
+----+----------+-------------------------+-------------------------+-------------------------+-----------+
| id | title | publish_date | created_at | updated_at | published |
+----+----------+-------------------------+-------------------------+-------------------------+-----------+
| 6 | asfdfdsa | 2010-03-28 22:33:00 UTC | 2010-03-28 22:33:46 UTC | 2010-03-28 22:33:46 UTC | true |
+----+----------+-------------------------+-------------------------+-------------------------+-----------+
私は次のようになりますmenu
スコープを持っています:
scope :menu, where("published != ?", false).limit(4)
私はそれを実行すると、私が手に:
Post.menu.all
+----+------------------+------------------+------------------+-------------------+-----------+
| id | title | publish_date | created_at | updated_at | published |
+----+------------------+------------------+------------------+-------------------+-----------+
| 1 | Lorem ipsum | 2010-03-23 07... | 2010-03-23 07... | 2010-03-28 21:... | true |
| 2 | fdasf | 2010-03-28 21... | 2010-03-28 21... | 2010-03-28 21:... | true |
| 3 | Ruby’s Imple... | 2010-03-28 21... | 2010-03-28 21... | 2010-03-28 21:... | true |
| 4 | dsaD | 2010-03-28 22... | 2010-03-28 22... | 2010-03-28 22:... | true |
+----+------------------+------------------+------------------+-------------------+-----------+
正しいのですが、私はp
がmenu
スコープ使用しているかどうかを確認しようとした場合:それはPost.menu.exists?(p)
true
を得るI false
何かの特定のインスタンスがスコープ内にあるかどうかを確認する適切な方法は何ですか?
解決
は実際には、私の代わりにinclude?
のexists?
のアレイ法を用いて、それを解決することができた。
所属していません StackOverflow