相关疑难解决方法(0)

在连接表中,Rails缺少复合键的最佳解决方法是什么?

create_table :categories_posts, :id => false do |t|
  t.column :category_id, :integer, :null => false
  t.column :post_id, :integer, :null => false
end
Run Code Online (Sandbox Code Playgroud)

我有一个连接表(如上所述),其中的列引用了相应的类别表和posts表.我想执行的唯一约束组合键CATEGORY_ID,POST_IDcategories_posts连接表.但是Rails不支持这个(我相信).

为了避免我的数据中具有相同category_id和post_id组合的重复行的可能性,在Rails中缺少复合键的最佳解决方法是什么?

我的假设是:

  1. 在这种情况下,默认的自动编号列(id:整数)无法保护我的数据.
  2. ActiveScaffold可能会提供一个解决方案,但我不确定将它包含在我的项目中仅仅针对这个单一功能是否过度,特别是如果有更优雅的答案.

database ruby-on-rails composite-key junction-table

30
推荐指数
4
解决办法
8387
查看次数