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