我有一个在数据库级别具有唯一索引的模型,并且模型验证检查范围为多列的唯一性。
# db level
add_index :table1, %i[fk_belongs_to_id col1 col2 col3 col4], unique: true
# model level
validates :fk_belongs_to_id, uniqueness: { scope: %i[col1 col2 col3 col4], case_sensitive: false }
在规范中我有:
it { should validate_uniqueness_of(:fk_belongs_to_id).scoped_to(%i[col1 col2 col3 col4).ignoring_case_sensitivity }
但我不断收到此错误:
NoMethodError:
undefined method `all' for Symbol:Class
如何测试具有多列的唯一性范围?
我无法在他们的文档或任何内容中找到任何可以帮助解决此问题的内容。谢谢你的帮助!