2
我有一个表channels
,hstore列credentials
。每个频道的凭证可能不同,但我希望它们在填充时是唯一的。我已经设置了一些Postgres的指标是这样的:如何设置rails验证列hstore密钥的唯一性?
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与ActiveRecord::RecordNotUnique
提出了一个严重的错误,但我想显示形式错误的熟悉轨道的方式。什么(如果有的话)是在hstore键'auth_token'和'seller_id'上使用验证唯一性的语法?
要点包括ActiveModel :: Validations。不幸的是,该模块不支持唯一性。 http://api.rubyonrails.org/classes/ActiveModel/Validations.html –