Pregunta

Estoy trabajando en un motor Rails y estoy tratando de escribir un generador que ponga esta línea

do_stuff (foo)

Como la última declaración en config/routes.rb, sin romper la sintaxis del archivo.

Específicamente, si mi config/routes.rb Parece esto actualmente

Rails.application.routes.draw do
    blah
    more blah
end

Después de ejecutar el generador me gustaría el config/routes.rb Para verse así

Rails.application.routes.draw do
    blah
    more blah
    do_stuff (foo) # injected line
end

Miré que ActiveAdmin lo hace, pero no puedo crear una regla general de última línea. Cualquier ayuda es muy apreciada.

¿Fue útil?

Solución

No probé eso, pero pienso por lo que vinculaste en el generador ActiveAdmin podría funcionar así:

inject_into_file "config/routes.rb", "  do_stuff(foo)\n", :before => /^end/

Esto debería insertar su código justo antes de un end Token que comienza al comienzo de una línea. Esto solo funciona para archivos de rutas formateados correctamente ...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top