当前位置:  开发笔记 > 后端 > 正文

迁移中没有自动增量选项的id字段

如何解决《迁移中没有自动增量选项的id字段》经验,为你挑选了1个好方法。

我有这样的数据库迁移:

 class CreateParticipations < ActiveRecord::Migration
      def self.up
        create_table(:participations, :primary_key => 'Seat')  do |t|      
          t.integer :Seat
          t.string :Nickname
          t.string :Clan
          t.string :FirstName
          t.string :LastName
          t.string :Email
          t.boolean  :Payed

          t.timestamps
        end
      end

      def self.down
        drop_table :participations
      end
    end

现在,座位是使用自动增量创建的.但是,我不希望这样.我希望它没有自动增量.我将在我的逻辑中定义Seat.

我一直在寻找,但我找不到如何禁用auto_increment.

我该怎么做呢?除了在MySQL中手动执行它.



1> AdminMyServe..:

为了记录,如果您绝对需要这样做(它不应该经常发生),这里是使用Rails迁移DSL执行非自动增量主键的方法:

create_table(:table_name, :id => false) do |t|
  t.integer :id, :options => 'PRIMARY KEY'
end

无论如何,这将适用于MySQL,如果您的数据库使用不同的语法来指定主键,请将其替换为:options => 'PRIMARY KEY'任何内容.

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有