为什么 Rails 迁移生成器不尊重我要求的字段?



我使用这样的命令:

administrator@ubuntu:~/demo$ rails generate migration Testabc test123:string

终端响应:

invoke active_record
create db/migrate/20120204124219_testabc.rb

但在文件的内容是:

class Testabc < ActiveRecord::Migration
  def up
  end
  def down
  end
end

那么,我的表和字符串列在哪里?

您的迁移需要看起来像rails g migration add_<field>_to_<table> field:type。例如:

rails generate migration add_fieldname_to_tablename fieldname:string

将生成以下内容:

class AddFieldnameToTablename < ActiveRecord::Migration
  def up
    add_column :tablenames, :fieldname, :string
  end
  def down
    remove_column :tablenames, :fieldname
  end
end

如果你想从头开始生成模型,那么你应该这样做:

rails generate model Widget fieldname:string

这将产生包括模型所需字段的迁移。

也许您正在寻找:

rails generate model Testabc test123:string

相关内容

  • 没有找到相关文章

最新更新