Ruby on Rails - Buscadores

Las siguientes son las formas de encontrar registros con y sin condiciones:

A continuación, encontrará un autor con ID 50.

Author.find(50)

A continuación se encuentran autores con ID 20, 30 y 40.

Author.find([20,30, 40])

A continuación se encuentran todos los autores:

Author.find :all

A continuación se encuentran todos los autores con nombre alam .

Author.find :all
            :condition => ["first_name =?", "alam" ]

A continuación encontrará el primer registro de los autores con nombre alam .

Author.find :first
            :condition => ["first_name =?", "alam" ]

Opciones para buscadores

Puede utilizar la siguiente opción junto con find función.

  • :order => 'name DESC' Utilice esta opción para ordenar el resultado en orden ascendente o descendente.

  • :offset => 20 Comienza a buscar registros desde el desplazamiento 20.

  • :limit => 20 Devuelve solo 20 registros.

  • :group => 'name' Esto es equivalente al fragmento de sql GROUP BY.

  • :joins => LEFT JOIN ...' LEFT JOIN adicional (rara vez se usa).

  • :include => [:account, :friends] Esta es la UNIÓN EXTERIOR IZQUIERDA con este modelo.

  • :select => [:name, :address] Use esto en lugar de SELECT * FROM.

  • :readonly => true Use esto para hacer que los objetos estén protegidos contra escritura.

Buscadores dinámicos basados ​​en atributos

Puede utilizar funciones más dinámicas para obtener valores.

Si hay un campo user_name, luego puede usar lo siguiente para buscar registros por nombre de usuario.

Person.find_by_user_name(user_name)

Si hay un campo last_name, luego puede usar lo siguiente para buscar registros por apellido.

Person.find_all_by_last_name(last_name)

Si hay campos user_name y password, luego puede usar lo siguiente para buscar un registro para un nombre de usuario y contraseña determinados.

Person.find_by_user_name_and_password(user_name, password)
rieles-referencias-guía.htm