【发布时间】:2016-09-01 14:59:47
【问题描述】:
创建记录时,我想将名为original_id 的列设置为其主键的值(在本例中为id)。本质上,这些行将变成层次结构,它们看起来像这样:
| id | original_id |
| -- | ----------- |
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| .. | 1 |
| 42 | 42 |
| 43 | 42 |
模型将如下所示:
class AccountTransaction < ApplicationRecord
belongs_to :original,
class_name: 'AccountTransaction',
foreign_key: :original_id
end
创建记录然后像这样更新很容易:
record = AccountTransaction.create
record.update(original: record)
但我正在寻找一种更优雅的解决方案,一种不需要两个数据库事务的解决方案。感谢您的帮助。
【问题讨论】:
标签: ruby-on-rails ruby postgresql activerecord