在 Rails 3.2 中,我们如何覆盖默认模型脚手架生成器以在脚手架时在 model.rb 文件中添加自定义方法。
我只是希望所有模型在创建脚手架后都具有以下方法。
def code
"some_prefix" + self.id.to_s
end
我正在尝试做类似于在 rails 3 中覆盖默认脚手架生成器的事情
我无法弄清楚我需要覆盖哪个文件。
在 Rails 3.2 中,我们如何覆盖默认模型脚手架生成器以在脚手架时在 model.rb 文件中添加自定义方法。
我只是希望所有模型在创建脚手架后都具有以下方法。
def code
"some_prefix" + self.id.to_s
end
我正在尝试做类似于在 rails 3 中覆盖默认脚手架生成器的事情
我无法弄清楚我需要覆盖哪个文件。
你必须覆盖model.rb
activerecord的文件。它看起来像这样:
<% module_namespacing do -%>
class <%= class_name %> < <%= parent_class_name.classify %>
<% attributes.select(&:reference?).each do |attribute| -%>
belongs_to :<%= attribute.name %><%= ', polymorphic: true' if attribute.polymorphic? %>
<% end -%>
<% if attributes.any?(&:password_digest?) -%>
has_secure_password
<% end -%>
end
<% end -%>
把它放在lib文件夹中:
|____lib
| |____templates
| | |____active_record
| | | |____model
| | | | |____model.rb