Query con condizioni su campi boolean


#1

Ho la seguente query nel modello arguments:

Question.count :conditions => “argument_id == #{id} and admin_id ==
#{admin_id} and pubblica == xxxxx”

Qualcuno mi sa dire cosa devo sostituire al posto di xxxxx affinchè la
query funzioni valutando il valore boolean “pubblica” ??

Ho provato true, 1, con e senza apici, conversioni in striga,
conversioni in numero e mille altre possibilità , ma niente da fare.
La query senza la terza condizione funziona, ma non riesco proprio a
capire come valutare il valore true/false del campo “pubblica”…

Help !! :slight_smile:


#2

Come non detto, ho risolto con:

Question.count :conditions => “argument_id = #{id} and admin_id =
#{admin_id} and pubblica = ‘f’”

Per maggiori chiarimenti:

http://dev.rubyonrails.org/ticket/2356


#3

On Sat, Nov 22, 2008 at 7:09 PM, Davide S.
removed_email_address@domain.invalid wrote:

Come non detto, ho risolto con:

Question.count :conditions => “argument_id = #{id} and admin_id =
#{admin_id} and pubblica = ‘f’”

L’ideale sarebbe fare:

:conditions => [“argument_id = ? AND admin_id = ? AND pubblica = ?”,
id, admin_id, true]

In automatico il true diventa ‘f’ o altro a seconda del database che
stai utilizzando.


#4

2008/11/22 Andrea F. removed_email_address@domain.invalid:

In automatico il true diventa ‘f’ o altro a seconda del database che
stai utilizzando.

…correggo, il false diventa ‘f’ o altro, il true diventa ‘t’ o altro :slight_smile: