我遇到与以下帖子相同的问题.
所以我想知道,为什么Rails默认不支持生成外键?不是必要的吗?或者我们应该手动完成吗?
ruby-on-rails foreign-keys foreign-key-relationship auto-generate
我使用的是PostgreSQL v9.0.1与Rails(和它的DEPS)@ v2.3.8,由于使用的Postgres的全文能力,我有被定义为表:
CREATE TABLE affiliate_products (
id integer NOT NULL,
name character varying(255),
model character varying(255),
description text,
price numeric(9,2),
created_at timestamp without time zone,
updated_at timestamp without time zone,
textsearch_vector tsvector,
);
注意最后一行,这确保了活动记录是无法与标准架构自卸车处理它,所以我必须设置config.active_record.schema_format = :sql在./config/environment.rb; 并使用rake db:test:clone_structure而不是rake db:test:clone.
这些都不是太了不起,只是不方便 - 但是rake db:test:clone_structure错误却失败了:
ERROR: must be owner of language plpgsql
因为#16我的结果./db/development_schema.sql:
CREATE OR REPLACE PROCEDURAL LANGUAGE plpgsql;
在超级用户安装PostgreSQL v9.0+ …