可以在Rails中插入行并将id的值赋给特定列,例如如果我的表有ID和LINK列,其中LINK链接到同一个表:
ID | LINK
1 | 1
2 | 1
3 | 1
插入第2列和第3列很简单,但是有没有办法用单个INSERT语句插入第1列?
这可能是通过rails语法还是我需要自定义SQL(在PostgreSQL上)?
[当然,这可以通过INSERT / UPDATE完成,但我需要在此表上禁用更新]
TX Zaharije
答案 0 :(得分:0)
这是一张自我加入的表格。您不需要自己编写SQL。只需在模型中定义这种关系,如下所示:
class Employee < ActiveRecord::Base
has_many :subordinates, :class_name => "Employee"
belongs_to :manager, :class_name => "Employee",
:foreign_key => "manager_id" # or what you call LINK
end
此外,链接可能不是一个好的列名,如果可以,请尝试选择更具描述性的内容。