3

我有一张桌子channels,有一个 hstore 列credentials。每个通道的凭据可能不同,但我希望它们在填充时是唯一的。我已经设置了一些这样的 postgres 索引:

execute "CREATE UNIQUE INDEX channels_key_seller_id_values_unique ON channels((credentials -> 'seller_id'))"
execute "CREATE UNIQUE INDEX channels_key_auth_token_values_unique ON channels((credentials -> 'auth_token'))"

这在@channel.save with 期间正确地引发了一个硬错误ActiveRecord::RecordNotUnique,但是我想要熟悉的 rails 显示表单错误的方式。在 hstore 键 'auth_token' 和 'seller_id' 上使用 validates uniqueness 的语法是什么(如果有)?

4

1 回答 1

0

检查这个,它可能会有所帮助:https ://gist.github.com/rf-/2322543

请注意,他使用了“sqlite3”。

于 2013-09-19T13:36:07.280 回答