9
在RoR迁移中,如何自动增加非主键字段?我想在db定义中做到这一点,而不是在模型中。在Ruby on Rails中自动增加非主键字段
在RoR迁移中,如何自动增加非主键字段?我想在db定义中做到这一点,而不是在模型中。在Ruby on Rails中自动增加非主键字段
您需要执行一条SQL语句。
statement = "ALTER TABLE `users` CHANGE `id` `id` SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT"
ActiveRecord::Base.connection.execute(statement)
您可以手动条目迁移
注意这只是一个例子。最终的SQL语句语法取决于数据库。
我是否正确地假设您的答案是Rails没有提供一种方法来执行此操作,而无需直接执行SQL语句?我期望的是:'t.integer:auto_i,::auto_increment => true'来工作(但它没有)。 – kingjeffrey 2010-07-10 19:41:24
是的Rails没有在迁移中提供:auto_increment关键字 – user386660 2010-07-10 22:29:55
如果你想在Rails中使用所有关键字或其他好东西的话。 “用于ROR的rubymine IDE”将非常有用。我在过去6个月使用过。 – user386660 2010-07-10 22:32:13