Rails 从迁移文件生成脚手架
Rails generate scaffold from migration file
我使用以下方法创建了一个 Rails 4 迁移文件:
rails g migration CreateCompanyAndAttributes
我将迁移编辑为:
def change
create_table :companies do |c|
c.integer :name
c.string :logo_url
c.timestamps
end
create_table :attributes do |a|
a.string :name
a.string :description
a.string :image
a.timestamps
end
create_table :company_attributes do |t|
t.integer :facility_id
t.integer :attribute_id
t.timestamps
end
end
既然我的迁移已准备好部署,我如何为即将创建的所有三个表生成脚手架?
我应该先运行:
rake db:migrate
然后像
rails g scaffold companies
rails g scaffold attributes
rails g scaffold companies_attributes
看来你想要脚手架不迁移(你已经手动完成了)
您可以 运行 使用 --skip-migration 标志的脚手架命令。例如:
rails g scaffold Company name:string logo_url:string --skip-migration
希望能满足您的需求! :)
由于我无法找到从迁移文件开始的原始问题的答案,我最终删除了迁移文件并使用单独的 rails 为每个 [=14= 生成脚手架命令行命令].
rails g scaffold Company name:string logo_url:string
rails g scaffold Attribute name:string description:string image:string
rails g scaffold CompanyAttribute company_id:integer attribute_id:integer
rake db:migrate
我使用以下方法创建了一个 Rails 4 迁移文件:
rails g migration CreateCompanyAndAttributes
我将迁移编辑为:
def change
create_table :companies do |c|
c.integer :name
c.string :logo_url
c.timestamps
end
create_table :attributes do |a|
a.string :name
a.string :description
a.string :image
a.timestamps
end
create_table :company_attributes do |t|
t.integer :facility_id
t.integer :attribute_id
t.timestamps
end
end
既然我的迁移已准备好部署,我如何为即将创建的所有三个表生成脚手架?
我应该先运行:
rake db:migrate
然后像
rails g scaffold companies
rails g scaffold attributes
rails g scaffold companies_attributes
看来你想要脚手架不迁移(你已经手动完成了)
您可以 运行 使用 --skip-migration 标志的脚手架命令。例如:
rails g scaffold Company name:string logo_url:string --skip-migration
希望能满足您的需求! :)
由于我无法找到从迁移文件开始的原始问题的答案,我最终删除了迁移文件并使用单独的 rails 为每个 [=14= 生成脚手架命令行命令].
rails g scaffold Company name:string logo_url:string
rails g scaffold Attribute name:string description:string image:string
rails g scaffold CompanyAttribute company_id:integer attribute_id:integer
rake db:migrate