[Ror-es] Buscar usuarios con determinado rol

Antonio Reina antonio at infovalles.com
Thu Aug 30 11:50:26 GMT 2007


Ei, muchas gracias!

Funciono perfecto, lo he podido probar y genial :D

Gracias, hasta otra.

On Thu, 30 Aug 2007 09:13:03 +0200, "Javier Vidal Postigo"
<zanaguara at gmail.com> wrote:
> Suponiendo que el objeto 'role' tiene un atributo llamado 'title',
> cuyo contenido es el nombre del rol, a mí se me ocurre hacer algo así
> (no sé si habrá alguna manera mejor):
> 
> class Usuario < ActiveRecord::Base
> 
>   has_and_belongs_to_many :roles
> 
>   def self.find_by_role(role_title)
>     role = Role.find_by_title(role_title)
>     unless role.nil?
>       Usuario.find(:all).reject {|usuario| !usuario.roles.include?(role)}
>     else
>       []
>     end
>   end
> 
> end
> 
> 
> Con lo cual, en el controller ya podrás hacer:
> 
> @clientes = Usuario.find_by_role('cliente')
> 
> Salu2,
> 
> Javi
> 
> 
> El 29/08/07, Antonio Reina <antonio at infovalles.com> escribió:
>> Buenas,
>>
>> Tengo dos modelos, Usuario y Roles, están relacionados N:N.
>> En el controlador, necesito sacar un objeto @clientes, que serían los
>> usuarios que tuviesen el rol de cliente. Como puedo hacer esta
> búsqueda?
>>
>> Muchas gracias,
>>
>> Antonio
>>
>> _______________________________________________
>> Ror-es mailing list
>> Ror-es at lists.simplelogica.net
>> http://lists.simplelogica.net/mailman/listinfo/ror-es
>>
> _______________________________________________
> Ror-es mailing list
> Ror-es at lists.simplelogica.net
> http://lists.simplelogica.net/mailman/listinfo/ror-es



More information about the Ror-es mailing list