Question

Cherche à limiter une découverte en fonction des conditions dans un Rails 2.0.2.

Trouver une déclaration:

@employees = Employee.find_by_contents(params[:keywords].to_s, :include => [ :categories, :revisions, :approvals, :archives, :related_documents ])

Besoin d'ajouter une condition pour limiter la recherche

:conditions=>["archived = '0'"]

Bien que cela ne fonctionne pas

@employees = Employee.find_by_contents(params[:keywords].to_s, :include => [ :categories, :revisions, :approvals, :archives, :related_documents ], :conditions=>["archived = '0'"])

Quelqu'un sait ce que devrait être la syntaxe?

Était-ce utile?

La solution 2

Avait beaucoup de temps avec l'ajout d'une condition à Ferret Find_By, j'ai donc ajouté une commande post pour filtrer si elle est archivée. Si vous pensez encore à une meilleure façon, faites-le moi savoir. Merci.

@employees = Employee.find_by_contents(params[:keywords].to_s, 
              :include => [ :categories, :revisions, :approvals, 
                            :archives, :related_documents ])
@employees = @employees.find_all {|p| !p.archived}

Autres conseils

Si vous transmettez des conditions un tableau, je pense que cela doit être pour une condition paramétrée. Essayez soit / les deux suivantes:

    @employees = Employee.find_by_contents(params[:keywords].to_s, 
                  :include => [ :categories, :revisions, :approvals, 
                                :archives, :related_documents ], 
                  :conditions=> "archived = '0'")

ou

@employees = Employee.find_by_contents(params[:keywords].to_s,                           
                  :include => [ :categories, :revisions, :approvals, 
                                :archives, :related_documents ],
                  :conditions=>["archived = ?",'0'])

Premièrement, quelle erreur avez-vous?

Et essayez ceci

@employees = Employee.find_by_contents(params[:keywords].to_s, :include => [ :categories, :revisions, :approvals, :archives, :related_documents ], :conditions=>["employees.archived = ?", false])
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top