如何解决如何使用自定义生成器生成迁移
这是 lib / genrators / form
中的生成器类class FormGenerator < Rails::Generators::Base
source_root File.expand_path('templates',__FILE__)
source_root File.expand_path('templates',__dir__)
argument :model,type: :string
def create_template
template "models/form.template","app/models/#{model}.rb"
template "controllers/forms_controller.template","app/controllers/#{model}s_controller.rb"
template "javascript/api/form.template","app/javascript/api/#{model}.js"
template "javascript/pages/component/forms.template","app/javascript/component/#{model}s.vue"
template "javascript/pages/form/index.template","app/javascript/pages/#{model}/index.vue"
template "javascript/pages/form/layout.template","app/javascript/pages/#{model}/layout.vue"
template "javascript/store/actions/form.template","app/javascript/store/actions/#{model}.js"
template "javascript/store/getters/form.template","app/javascript/store/getters/#{model}.js"
template "javascript/store/modules/form.template","app/javascript/store/modules/#{model}.js"
template "javascript/store/mutations/form.template","app/javascript/store/mutations/#{model}.js"
end
end
这是输出:
rails g form test name:string
create app/models/test.rb
create app/controllers/tests_controller.rb
create app/javascript/api/test.js
create app/javascript/component/tests.vue
create app/javascript/pages/test/index.vue
create app/javascript/pages/test/layout.vue
create app/javascript/store/actions/test.js
create app/javascript/store/getters/test.js
create app/javascript/store/modules/test.js
create app/javascript/store/mutations/test.js
我想要这个生成器,生成db / migrate中的迁移文件
我已经尝试了这些东西,但没有成功:
class FormGenerator < Rails::Generators::Base
include Rails::Generators::Migration
include ActiveRecord::Generators::Base
migration_template
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。