Foros del Web » Programando para Internet » Ruby »

Api en Ruby on Rails: ¿Puedo agregar diferentes métodos GET de una entidad?

Estas en el tema de Api en Ruby on Rails: ¿Puedo agregar diferentes métodos GET de una entidad? en el foro de Ruby en Foros del Web. Al generar el controlador y las rutas, tengo que hacer un metodo Create, Update, Index, Show que representan a los diferentes verbos HTTP, GET, POST ...
  #1 (permalink)  
Antiguo 10/03/2016, 14:43
 
Fecha de Ingreso: marzo-2016
Mensajes: 1
Antigüedad: 8 años, 1 mes
Puntos: 0
Api en Ruby on Rails: ¿Puedo agregar diferentes métodos GET de una entidad?

Al generar el controlador y las rutas, tengo que hacer un metodo Create, Update, Index, Show que representan a los diferentes verbos HTTP, GET, POST PUT.

Mi duda es que pasa si por ejemplo en el método index consulto un listado de todos los usuarios, pero quiero otro método que me de los mejores 10 usuarios y otro en donde me de los usuarios de un rol en especifico, tengo que configurar y generar las rutas para cada una de esas acciones o que es lo correcto?

En caso de ser posible configurar las rutas para tener mas acciones del metodo GET, como lo explico arriba cual es la manera de hacerlo con Ruby on Rails.

Última edición por oscargraciae; 10/03/2016 a las 14:44 Razón: Error de escritura
  #2 (permalink)  
Antiguo 10/03/2016, 17:02
Avatar de abimex
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: ~
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 137
Respuesta: Api en Ruby on Rails: ¿Puedo agregar diferentes métodos GET de una entidad

Si es posible, la configuración en la rutas seria:

routes.rb
Código ruby:
Ver original
  1. resources :users do
  2.   collection do
  3.     get 'last_10_users'
  4.   end
  5. end

y en tu controlador agregas el método correspondiente.
__________________
>> abimaelmartell.com

Etiquetas: api, rails, rest
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:57.