J'ai Car
(table cars
) méthode que has_many
propriétaires (table owners
). Comment puis-je choisir toutes les voitures, qui n'a pas de propriétaires (== dans le tableau owners
n'est pas une rangée avec l'ID de la voiture respective)?Rails 3 + ActiveRecord - sélectionnez avec condition pour l'association
0
A
Répondre
3
je le ferais comme ci-dessous dans le modèle ....
@cars_without_owners = Car.where("owner_id = ?", nil)
ou pour être sûr ....
@cars_without_owners = Car.where("owner_id = ? OR owner_id = ?", nil, "")
1
Vous pouvez utiliser cela, bien qu'il serait très lent si vos tables ont plusieurs enregistrements:
Car.where("not exists (select o.id from owners as o where o.car_id = cars.id)")
Questions connexes
- 1. Rails 3 ActiveRecord trouver
- 2. Rails 3 ActiveRecord Localisation
- 3. rails 3 Association ActiveRecord
- 4. Rails 3 ActiveRecord: UNION
- 5. Rails 3 ActiveRecord chaînage
- 6. Complexe JOIN avec ActiveRecord et Rails 3
- 7. Écrire des pilotes pour ActiveRecord (Rails 3)
- 8. Supprimer ActiveRecord dans Rails 3
- 9. Rails 3 ActiveRecord Time.now question
- 10. Rails 3 ActiveRecord conditionnel inclut?
- 11. Rails 3 Tables temporaires ActiveRecord
- 12. Rails 3: Many-to-Many relation avec la condition
- 13. ActiveRecord find() avec condition négative
- 14. Rails 3 - condition de compétition éventuelle?
- 15. Rails 3 ActiveRecord # inclut un bug?
- 16. Rails (3) validation du champ non-ActiveRecord
- 17. Tri des objets activerecord dans Rails 3
- 18. Conversion de SQL en Rails 3 ActiveRecord
- 19. Rails 3: Résultats ActiveRecord et Array # include?
- 20. Utiliser ActiveRecord dans Ruby On Rails 3
- 21. Sélectionnez n objets au hasard avec condition dans Rails
- 22. Rails 3, activerecord import-gem, CSV
- 23. Rails 3 groupe ActiveRecord par enfant attribut
- 24. Rails 3 somme ActiveRecord d'un modèle pour chaque modèle associé
- 25. Rails 3: DataMapper au lieu de ActiveRecord
- 26. Rails 3 ActiveRecord .skip_callback sécurité des threads
- 27. Sortie JSON conditionnelle pour le modèle ActiveRecord (Rails 3)
- 28. Comment localiser la valeur du modèle activerecord avec Rails 3
- 29. Quel est le remplacement de Rails 3 pour ActiveRecord :: Errors?
- 30. Rails 3 problème avec deuxième, troisième méthodes ActiveRecord