我创建了id为bigint的表
class Hoge < ActiveRecord::Migration
def change
create_table :hoges, id: false do |t|
t.column :id, :serial8, primary_key: true
t.integer :bar, null: false
end
end
end
并在模型
处设置primary_keyclass Hoge < ActiveRecord::Base
self.primary_key = :id
end
然后,我执行exec迁移,成功创建了开发数据库
Column | Type | Modifiers
--------------+-----------------------------+----------------------------------------------------------
id | integer | not null default nextval('hoges_id_seq'::regclass)
bar | integer | not null
然后,我执行“rake test” 测试数据库已创建,但无效。默认为0 .....
Column | Type | Modifiers
--------------+-----------------------------+----------------------------------------------------------
id | integer | not null default 0
bar | integer | not null
为什么测试环境的数据库不是同一个开发环境? (数据库是postgres)
答案 0 :(得分:-2)
您应该使用命令rake db:test:prepare