2012-08-12 17 views
11

Sé que esta es probablemente una pregunta para principiantes, pero ¿es posible crear una nueva acción (método en el controlador & vista asociada) desde la línea de comando en un controlador existente?Crear una nueva acción para el controlador existente

Por ejemplo, ya tengo un controlador llamado 'Productos'. Podría correr:

rails g controller products [new_action] 

y luego rieles insertaría:

def [new_action] 

end 

En mi controlador de productos y crear un nuevo archivo llamado '[new_action] .html.erb' en la vista/productos/directorio ? Ya lo busqué en Google, pero no se me respondió satisfactoriamente. Además, seguiría adelante y lo intentaré, pero estoy bastante lejos en el desarrollo de mi aplicación actual y realmente no quiero estropear nada.

+1

¿No está usando el control de versión? –

Respuesta

14

Estoy bastante seguro de que no podrá hacer esto de una manera 100% automatizada. La razón es que Rails no sabe qué ha hecho con sus rutas o su controlador, y sería necesario cierta lógica para saber cómo actualizar estos archivos existentes. Su mejor opción es simplemente agregar la nueva acción manualmente. Agregue el nuevo método a su controlador, actualice su archivo de rutas y agregue la vista. Probablemente demore 1 minuto como máximo. Además, si no está usando el controlador de versión (a lo que se le escapó su pregunta), entonces no tiene que preocuparse de que sobrescriba automáticamente algo.

0

podemos crear manualmente la acción en el controlador y la vista, pero también hay que añadir las declaraciones de prueba que ya debe ser bueno proceso automatizado, algo así como los carriles generar nombre del controlador [acción acción] opción m m = merge

Cuestiones relacionadas