Personalizzazione scaffold_generator.rb rails 4

Ciao a tutti,
dovrei creare in fase di scaffold una vista in più.

Riesco a farlo tranquillamente aggiungendo una voce in più al metodo
available_views nel file scaffold_generator.rb della cartella railties.

Sapete se c’è la possibilità di fare un override del file, mettendolo
magari nella lib/templates del progetto, senza toccare il file nella
railties?

Grazie Mauro

Telegraficamente, butta tutto in lib:

lib/
templates/
haml/ o erb…
scaffold
_form.html.haml
edit.html.haml

rails/
scaffold_controller/
controller.rb

Tutto chiaro?

:wink:

ciao

iwan

Il giorno 5 febbraio 2015 15:57, Mauro L. [email protected] ha
scritto:

Ciao Iwan,
grazie mille per la risposta.

Sullo scaffold del controller.rb, model.rb e relative viste standard
riesco tranquillamente.
Il mio problema è che il metodo available_views del file
scaffold_generator.rb genera solamente le quattro viste canoniche
(index, edit, show, _form) e vorrei aggiungerne una senza modificare il
file e facendo un ovverride del file (o altro meotodo che non conosco)

Grazie
Mauro

Ciao,

hai provato qualcosa del genere?

http://blog.revathskumar.com/2014/08/rails-custom-view-scaffold.html

in pratica viene creato un template engine custom che eredita da quello
di rails (ovviamente controlla che i moduli e le classi siano gli stessi
della versione di rails che stai usando) e lo si setta in application.rb
come template engine da usare:

config/application.rb

config.generators do |g|

g.template_engine :custom

end

L’esempio nel post è molto più complesso, nel tuo caso credo che
dovresti semplicemente cambiare il metodo available_views con qualcosa
del genere:

def available_views

super << ‘custom_view’

end

A presto

Alberto V.

http://nebulab.it

On Fri, Feb 6, 2015 at 10:51 AM, Mauro L. [email protected]