2012-03-09 3 views
4

Если я хочу изменить шаблон контроллера по умолчанию, созданный эшафотом в Rails, он мертв легко - после того, как я обнаружил, что я могу просто добавить файл controller.rb в lib/templates/rails/controller для генератора, по умолчанию.Как изменить шаблон модели по умолчанию в Rails-эшафоте?

Я не могу найти объяснения, где я могу сделать то же самое для файла модели. Я не хочу, чтобы построить отдельный генератор, я просто хочу:

> rails generate model foo 

создать файл модели foo.rb на основе шаблона model.rb я делаю.

ответ

1

Не уверен, что это отличная идея, но вы можете найти код генератора здесь: https://github.com/rails/rails/blob/master/railties/lib/rails/generators/rails/model/model_generator.rb

module Rails 
    module Generators 
    class ModelGenerator < NamedBase #metagenerator 
     argument :attributes, :type => :array, :default => [], :banner => "field[:type][:index] field[:type][:index]" 
     hook_for :orm, :required => true 
    end 
    end 
end 

Согласно this post хотя вы должны быть в состоянии поставить шаблон в lib/templates/rails/model хотя вам может понадобиться указать, где он расположен через рейк-задачу в соответствии с to this

+0

Да, я действительно пробовал, и, похоже, не было никаких изменений, которые я сделал в файле model_generator.rb ... возможно, я где-то ошибся, потому что была моя мысль о том, как это сделать тоже ... или, может быть, я не понял, правильно ли y, как заставить этот генератор использовать мой файл шаблона (все еще довольно новый с генераторами). Я рассмотрю это решение, хотя вы его предлагаете. –

+0

Хорошо ... поэтому я взглянул на то, что вы ссылаетесь, и ссылки на 1) создание собственного генератора и использование этого, 2) то, что я упомянул в исходном сообщении, которое должно размещать файлы в правой папке lib для другой материал. Таким образом, ни одна из них не помогает. Вопрос в том, что я могу сделать для вытаскивания модели из шаблона, как я могу сделать с помощью шаблонов контроллера и просмотра. Я вижу код генератора - у меня уже была реплицированная копия для изменения в папке lib/templates/rails/model. Я не могу понять, какие изменения могут быть сделаны для этого, чтобы он мог вставить шаблон или, если это вообще возможно , –

Смежные вопросы