我看到在嵌入文档中忽略了UniqueIndex约束,这是一个例子:
use Doctrine\ODM\MongoDB\Mapping\Annotations as MongoDB;
/**
* @MongoDB\EmbeddedDocument()
*/
class Service
{
/**
* @MongoDB\Id()
*/
protected $id;
/**
* @MongoDB\Field("type=string")
* @MongoDB\UniqueIndex()
*/
protected $label;
...
当我插入具有相同标签的2行时,当我需要获得有关重复键错误的代码异常11000时,它们被接受。 任何解决方案?
关键字:
答案 0 :(得分:0)
问题已经回答:MongoDB: Unique Key in Embedded Document
唯一索引仅存在于集合中。要在文档中强制实施唯一性和其他约束,您必须在客户端代码中执行此操作。 (可能virtual collections允许这样做,你可以投票支持它。)