Ruby on rails 如何处理可能需要相同id的条目

Ruby on rails 如何处理可能需要相同id的条目,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,我有以下型号: class Site has_many :posts end class Post belongs_to :site end 《华盛顿邮报》有以下栏目: id site_id url title body 这将存储wordpress帖子,我想使用wordpress帖子的post\u id,因此,我可以有两个站点,例如,有帖子1。因此,我需要一种方法来复制post ID,但指向不同的条目 谢谢。不管这个用例如何,让您的ActiveRecordid依赖于另一个数据源都是

我有以下型号:

class Site
  has_many :posts
end

class Post
  belongs_to :site
end
《华盛顿邮报》有以下栏目:

id
site_id
url
title
body
这将存储wordpress帖子,我想使用wordpress帖子的
post\u id
,因此,我可以有两个站点,例如,有帖子
1
。因此,我需要一种方法来复制post ID,但指向不同的条目


谢谢。

不管这个用例如何,让您的ActiveRecord
id
依赖于另一个数据源都是一种不好的做法

对于您的情况,忽略常规的
id
,并将WordPress帖子id存储在一个新列中,我们称之为
wp\u id
,它在整个表中不是唯一的

然后,您可以创建以下索引以加快查询速度并确保每个站点的帖子ID的唯一性:

add_index :posts, [:site_id, :wp_id], unique: true

这样,您就得到了所谓的复合键,这意味着
site\u id
wp\u id
的每一个组合在
posts
表中都是唯一的。

!这正是我需要的,只是为了确定。这应该添加到哪里?