本文整理汇总了PHP中Doctrine\ODM\MongoDB\Mapping\ClassMetadata::setIdentifier方法的典型用法代码示例。如果您正苦于以下问题:PHP ClassMetadata::setIdentifier方法的具体用法?PHP ClassMetadata::setIdentifier怎么用?PHP ClassMetadata::setIdentifier使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Doctrine\ODM\MongoDB\Mapping\ClassMetadata
的用法示例。
在下文中一共展示了ClassMetadata::setIdentifier方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: mapTranslation
/**
* Add mapping data to a translation entity
*
* @param ClassMetadata $metadata
*/
private function mapTranslation(ClassMetadata $metadata)
{
// In the case A -> B -> TranslationInterface, B might not have mapping defined as it
// is probably defined in A, so in that case, we just return;
if (!isset($this->mappings[$metadata->name])) {
return;
}
$config = $this->mappings[$metadata->name];
$mapping = $config['translation']['mapping'];
$metadata->isEmbeddedDocument = true;
$metadata->isMappedSuperclass = false;
$metadata->setIdentifier(null);
// Map locale field.
if (!$metadata->hasField($mapping['translation']['locale'])) {
$metadata->mapField(array('fieldName' => $mapping['translation']['locale'], 'type' => 'string'));
}
// Map unique index.
$keys = array($mapping['translation']['translatable'] => 1, $mapping['translation']['locale'] => 1);
if (!$this->hasUniqueIndex($metadata, $keys)) {
$metadata->addIndex($keys, array('unique' => true));
}
}