Saber si un objeto está incluido en un array

18 de Junio, 2008 — Ruby

A veces es necesario saber si un objeto está incluido en un array. Supongamos que tenemos el id de un usuario y queremos saber si está incluido en un array donde tenemos los id’s de los usuarios que viven en la ciudad de Barcelona. Ruby nos proporciona una manera fácil de realizar esto:

barceloneses = User.find(:all, :conditions => "city = 'Barcelona'")
user = User.find_by_name('Emili')
if barceloneses.include?(user.id)
....
end

El método include?(objeto) devuelve true o false en función de si el objeto se encuentra dentro del array.

Más información
www.ruby-doc.org/core/classes/Array.html

2 Comentarios »

  1. Jode, no te lo tomes mal pero te lo podrías haber currado un poco más… un post para hablar del método include? de Array!!!!! si me dices del find() de los modelos, bueno, fale, pero el include?!!!!!

    Un saludo, en general haceis un gran trabajo con el blog y evidentemente menos hacen/mos otros!

    Comentario por eneko — 18 de Junio, 2008 @ 11:16
  2. Hola Eneko, cualquier crítica es bienvenida. Está claro que los que dominamos un poco Ruby no tenemos problema para hacer esto, vamos a la documentación, lo miramos y punto. Pero creo que hay gente que está empezando a la que le viene bien estos apuntes. Los objetos de tipo Array son de los que más se utilizan en una aplicación Rails, de ahí que haya puesto este minipost, porque creo que a alguien le puede ser útil.

    De todas maneras me apunto lo del find para cuando tenga tiempo :)

    Un saludo!

    Comentario por Emili — 18 de Junio, 2008 @ 11:22

Redifusión RSS de los comentarios de la entrada. TrackBack URI

Deje un comentario

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. | Emili Parreño