2009/11/19 Silvio Quadri <[email protected]>

> El día 19 de noviembre de 2009 11:34, Emmanuel Oga
> <[email protected]> escribió:
> >
> >
> > 2009/11/19 lizzy ~* <[email protected]>
> >>
> >> On Thu, Nov 19, 2009 at 11:06 AM, Jürgen Feßlmeier <
> [email protected]>
> >> wrote:
> >>>
> >>> Estoy usando esta forma muchisimo tambien y es corecto, pero para otras
> >>> es un poco mas dificil a ler que:
> >>
> >> si... yo apenas vi eso en el codigo [que no recuerdo quien lo escribio
> ya]
> >> dije "uuh... voy a ponerlo bien con =="
> >> y luego me reventaba la aplicacion y no entendia nada jajaja luego cai,
> >> asi que lo volvi a como estaba antes
> >>
> >>>
> >>> foo = Bar.find(:all, :conditions => {:lol => 3})
> >>> if foo
> >>>   puts foo
> >>> end
> >>>
> >
> > Es muy comun encontrar eso. En ruby no luce tan mal, en gral es obvio que
> la
> > intencion es asignar y chequear a la vez que el valor no sea nil o false.
> En
> > otros lenguajes (como C) se recomienda no hacerlo por la razon que
> menciona
> > lizzy. Personalmente trato de evitarlo siempre que puedo.
> >
> > En otro tema, cuando el if es de una sola linea me gusta mucho ponerlo
> > despues del statement
> >
> > foo = Bar.find(:all, :conditions => {:lol => 3})
> > puts foo if foo
> >
> > P.S.: haciendo un poco de nit-pick, si Bar es una clase ActiveRecord, ese
> > check no sirve para nada. find o encuentra o explota. Si queres checkear
> por
> > nil tenes que usar Bar#find_by_id.
>
> En este caso, devuelve un arreglo, el cual podría estar vacío. O sea
> ... siempre se imprime foo
>

ah! find(:all). Cierto, estaba pensando en find(id) :p


> Silvio
> _______________________________________________
> Ruby mailing list
> [email protected]
> http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
>



-- 
--------------------------------------------------------------
EmmanuelOga.com - Software Developer
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a