Rails, si par exemple est dans un champ?
-
22-09-2019 - |
Question
J'utilise 3 rails et je ne peux pas sembler vérifier si une instance donnée est dans un champ, voir ici:
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 |
+----+----------+-------------------------+-------------------------+-------------------------+-----------+
J'ai un champ d'menu
qui ressemble à:
scope :menu, where("published != ?", false).limit(4)
Quand je cours, je reçois:
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 |
+----+------------------+------------------+------------------+-------------------+-----------+
Ce qui est correct, mais si je tente de vérifier si p
est dans le périmètre de l'aide menu
: Post.menu.exists?(p)
je reçois true
quand il devrait être false
Quelle est la bonne façon de savoir si une instance donnée de quelque chose est dans un champ?
La solution
En fait, j'ai pu le résoudre en utilisant cette méthode Array de include?
au lieu de exists?
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow