好吧我用Google搜索了我的问题,但我找不到任何东西,或者我这不是正确的问题..
问题是我需要修改数据库的primary_key名称:id with:another_id,在我的项目中我需要使用pgrouting并且它包含几个plsql函数,这些函数使用名为gid的主键而不是修改plsql函数最好更改id名称,我想用迁移来做这件事,因为我认为这是轨道方式。
有可能吗,我怎么能这样做?
提前致谢,对不起我的英语。
修改
create_table :pruebas, primary_key: :gid do |t|
t.string :name
t.timestamps
end
这样做,并使用此活动记录生成并使用pk作为gid。
对不起,如果我的问题不明确..格拉西亚斯拉斯respuestas。
答案 0 :(得分:1)
要自己设置主键,在创建表时,您可以执行以下操作:
create_table(:table_name, primary_key: 'gid') do |t|
...
end
您需要在模型中定义主键名称:
self.primary_key = 'gid'
答案 1 :(得分:1)
我没有使用PostgreSQL或pgRouting的经验,但我相信您正在寻找的是一种指示ActiveRecord使用不同列作为主键的方法。
我相信你正在寻找set_primary_key。
class Project < ActiveRecord::Base
set_primary_key "gid"
end