[ruby-on-rails] Rails où la condition utilise NOT NULL



1 Answers

Ce n'est pas un bug dans ARel, c'est un bug dans votre logique.

Ce que vous voulez ici est:

Foo.includes(:bar).where(Bar.arel_table[:id].not_eq(nil))
Question

En utilisant le style 3 rails, comment écrirais-je le contraire de:

Foo.includes(:bar).where(:bars=>{:id=>nil})

Je veux trouver où id n'est pas nul. J'ai essayé:

Foo.includes(:bar).where(:bars=>{:id=>!nil}).to_sql

Mais cela revient:

=> "SELECT     \"foos\".* FROM       \"foos\"  WHERE  (\"bars\".\"id\" = 1)"

Ce n'est certainement pas ce dont j'ai besoin, et cela ressemble presque à un bug dans ARel.







Related