Je suis en train de définir deux variables comme suit:Trouver tous les enregistrements qui ont un champ non nul?
- @orders = Customer.find_all_by_order_date (néant)
- @nonorders = Customer.find_all_by_order_date (! Nil)
La première fonctionne correctement mais la seconde ne le fait pas. Comment puis-je trouver les clients dont les champs order_date ne sont pas nuls?
@nonorders = @ customer.orders.find (: all,: conditions => "@ customer.orders.order_date IS NOT NULL")
me donne l'erreur suivante:
méthode non définie `extract_options_from_args! ' pour ActiveRecord :: Base: Class
J'ai essayé de changer les conditions, telles que @ orders.order_date, @ customer.order.order_date, etc. Quelle est l'origine de cette erreur? Je vous remercie!
Dans Rails, généralement le nom de la classe pour le modèle est le premier lettres sont, singulier supérieur. Et le nom de la table de base de données est généralement minuscule, pluriel. Donc, il devrait être Customer.find (: all,: conditions => "customers.date IS NOT NULL") Vous devriez vérifier dans ce problème. Un nom de modèle pluriel au lieu du singulier habituel (Clients au lieu du Client) peut entraîner beaucoup de confusion lorsque vous construisez votre sw. –
Les clients pluriel était malheureusement une faute de frappe - J'utilise le client dans mon système. Merci Larry! – sscirrus