本文整理汇总了PHP中Oro\Bundle\EntityConfigBundle\Config\ConfigManager::getConfigModelId方法的典型用法代码示例。如果您正苦于以下问题:PHP ConfigManager::getConfigModelId方法的具体用法?PHP ConfigManager::getConfigModelId怎么用?PHP ConfigManager::getConfigModelId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Oro\Bundle\EntityConfigBundle\Config\ConfigManager
的用法示例。
在下文中一共展示了ConfigManager::getConfigModelId方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: isApplicableField
/**
* {@inheritdoc}
*/
public function isApplicableField($className, $fieldName)
{
if (null === $this->configManager->getConfigModelId($className, $fieldName)) {
// this serializer works with non configurable entities as well
return true;
}
if (true === $this->configManager->isHiddenModel($className, $fieldName)) {
// exclude hidden fields
return false;
}
$extendConfigProvider = $this->configManager->getProvider('extend');
$extendConfig = $extendConfigProvider->getConfig($className, $fieldName);
if (!$this->allowExtendedFields && $extendConfig->is('is_extend')) {
// exclude extended fields if it is requested
return false;
}
if ($extendConfig->is('is_deleted') || $extendConfig->is('state', ExtendScope::STATE_NEW)) {
// exclude deleted and not created yet fields
return false;
}
if ($extendConfig->has('target_entity') && $extendConfigProvider->getConfig($extendConfig->get('target_entity'))->is('is_deleted')) {
// exclude associations with deleted custom entities
return false;
}
return true;
}
示例2: getEntitiesMetadata
/**
* {@inheritdoc}
*/
public function getEntitiesMetadata()
{
$result = [];
foreach ($this->getChannelEntities() as $entityName) {
$entityConfig = $this->entityProvider->getEntity($entityName, true);
$extendConfig = $this->configManager->getProvider('extend')->getConfig($entityName);
$entityConfigModelId = $this->configManager->getConfigModelId($entityName);
if (null !== $entityConfigModelId) {
$entityConfig = array_merge($entityConfig, $this->getEntityLinks($entityConfigModelId));
}
$result[$entityName] = array_merge($entityConfig, ['type' => $extendConfig->get('owner')]);
}
return $result;
}
示例3: isApplicableField
/**
* {@inheritdoc}
*/
public function isApplicableField($className, $fieldName)
{
if (null === $this->configManager->getConfigModelId($className, $fieldName)) {
// this serializer works with non configurable entities as well
return true;
}
if (true === $this->configManager->isHiddenModel($className, $fieldName)) {
// exclude hidden fields
return false;
}
$extendConfigProvider = $this->configManager->getProvider('extend');
$extendConfig = $extendConfigProvider->getConfig($className, $fieldName);
if (!$this->allowExtendedFields && $extendConfig->is('is_extend')) {
// exclude extended fields if it is requested
return false;
}
if (!ExtendHelper::isFieldAccessible($extendConfig)) {
return false;
}
if ($extendConfig->has('target_entity') && !ExtendHelper::isEntityAccessible($extendConfigProvider->getConfig($extendConfig->get('target_entity')))) {
return false;
}
return true;
}