如何将主键添加到rails中的表

时间:2012-03-10 06:45:17

标签: ruby-on-rails ruby

嗨我的rails应用程序中有一个表没有任何id列或主键。多数民众赞成因为这张桌子是从以前的应用程序带入我的rails应用程序,并且该表格预先填充了数据。我现在意识到,如果没有整数主键,rails就无法在浏览器中显示编辑和显示视图。所以我需要在我的数据库中添加一个id列,它是一个主键并且自动增量。

根据我的谷歌搜索,我发现了一些关于为表创建主键的帖子,但没有完成任何内容。

所以我想知道是否有人可以帮助我。到目前为止,我所知道的是,为了更改表,必须编写一个迁移然后运行它。需要运行以添加id列的命令如下:

rails generate migration add_id_to_businesses id:primary_key

但是在运行此命令后,没有新列添加到我的数据库中。我不知道如何继续..如何在我的数据库中添加新列?

非常感谢一只手...... 谢谢,

1 个答案:

答案 0 :(得分:32)

rails g migration add_id_to_products id:primary_key

      invoke  active_record
      create    db/migrate/20120310085527_add_id_to_products.rb

迁移文件应该看起来像 -

   # db/migrate/20120310085527_add_id_to_products.rb
   class AddIdToProducts < ActiveRecord::Migration
     def change
        add_column :products, :id, :primary_key
     end
   end