datamapper多字段唯一索引

Joh*_*ler 8 ruby indexing datamapper

在Datamapper中,如何指定两个字段的组合必须是唯一的.例如,类别必须在域中具有唯一名称:

class Category
  include DataMapper.resource
  property :name, String, :index=>true #must be unique for a given domain

  belongs_to :domain
end
Run Code Online (Sandbox Code Playgroud)

jos*_*chi 16

您必须为这两个属性创建唯一索引:

class Category
  include DataMapper::Resource

  property :name, String, :unique_index => :u
  property :domain_id, Integer, :unique_index => :u

  belongs_to :domain
end
Run Code Online (Sandbox Code Playgroud)


Jon*_*röm 1

您是否尝试将这两个属性定义为键?不确定我是否尝试过,但这样它们应该成为复合键。

property :name, String, :key => true    
property :category, Integer, :key => true
Run Code Online (Sandbox Code Playgroud)