[Ror-es] "Objetizar" una string

Borja Martín borjam at dagi3d.net
Wed Sep 12 17:57:09 GMT 2007


Prueba algo así:

def mi_metodo(condition, user, attribute)
  if condition
    user.name <http://user.name>
  else
    user.send(attribute)
  end
end

<%= mi_metodo(true, @user, :last_name) %>

así lo que haces es llamar al método last_name de manera dinámica

Saludos

edgar.js escribió:
>
> Que tal.
>
> Me ha surgido un problemilla. No sé cómo explicarlo claramente, pero
> trataré de hacerlo mediante código.
>
> Quiero que mi función me regrese el valor de una columna para un usuario.
>
> def mi_metodo(condition, user, attribute)
>   if condition
>     user.name <http://user.name>
>   else
>     user.attribute
>   end
> end
>
> Es decir que si llamo mi metodo asi:
>
> <%= mi_metodo(true, @user, 'last_name') %>
>
> me regresaria el attributo name de @user. (vg. @user.name
> <http://user.name> # => 'Edgar')
>
> pero si lo llamo asi:
>
> <%= mi_metodo(false, @user, 'last_name') %>
>
> quisiera que regresara el atributo last_name de @user (vg.
> @user.last_name # => 'Suarez')
> Pero me sale un error, porque lo que intenta regresar es el atributo
> attribute de user (@user.attribute).
>
> Lo que quiero es que me regrese el valor de attribute. Se entiende? :S
>
> Gracias en adelantado.
> -- 
>
>
> edgar.js
> ------------------------------------------------------------------------
>
> _______________________________________________
> Ror-es mailing list
> Ror-es at lists.simplelogica.net
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>   


-- 
/**
 * dagi3d v4 | http://dagi3d.net
 */



More information about the Ror-es mailing list