【发布时间】:2014-12-13 17:56:42
【问题描述】:
我正在创建我将与之建立多态关联的 Rails 模型。在迁移中,我有以下索引,并希望这些列一起唯一。我了解到您可以将列组合在一起,但我想确保我理解这意味着什么。
add_index :addresses, [:addressable_type, :addressable_id], :unique => true
假设addressable_id 在两种情况下等于1,但一种是a,另一种是b。这不会违反独特的要求,对吧?我想确保这会考虑两列来确定唯一性。我理解正确吗?
【问题讨论】:
-
是的,您理解正确。要违反唯一要求, :addressable_type 和 :addressable_id 应该相等。语法也可以。
-
语法没问题,但 Rails 不适用于组合的唯一性。
标签: ruby-on-rails