本文整理匯總了PHP中Drupal\Core\Entity\EntityInterface::getTargetEntityTypeId方法的典型用法代碼示例。如果您正苦於以下問題:PHP EntityInterface::getTargetEntityTypeId方法的具體用法?PHP EntityInterface::getTargetEntityTypeId怎麽用?PHP EntityInterface::getTargetEntityTypeId使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Drupal\Core\Entity\EntityInterface
的用法示例。
在下文中一共展示了EntityInterface::getTargetEntityTypeId方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: checkAccess
/**
* {@inheritdoc}
*/
protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account)
{
if ($operation == 'delete') {
$field_storage_entity = $entity->getFieldStorageDefinition();
if ($field_storage_entity->isLocked()) {
return AccessResult::forbidden()->addCacheableDependency($field_storage_entity);
} else {
return AccessResult::allowedIfHasPermission($account, 'administer ' . $entity->getTargetEntityTypeId() . ' fields')->addCacheableDependency($field_storage_entity);
}
}
return AccessResult::allowedIfHasPermission($account, 'administer ' . $entity->getTargetEntityTypeId() . ' fields');
}
示例2: cloneEntity
/**
* {@inheritdoc}
*/
public function cloneEntity(EntityInterface $field_config, EntityInterface $cloned_field_config, $properties = []) {
/** @var \Drupal\field\Entity\FieldConfig $field_config */
/** @var \Drupal\field\Entity\FieldConfig $cloned_field_config */
/** @var \Drupal\field\Entity\FieldStorageConfig $cloned_field_storage */
if ((!isset($properties['skip_storage']) || !$properties['skip_storage'])) {
$cloned_field_storage = $field_config->getFieldStorageDefinition()->createDuplicate();
$cloned_field_storage->set('field_name', $properties['id']);
$cloned_field_storage->set('id', $properties['id'] . '.' . $cloned_field_storage->getTargetEntityTypeId());
$cloned_field_storage->save();
}
unset($properties['skip_storage']);
$properties['field_name'] = $properties['id'];
$properties['id'] = $cloned_field_config->getTargetEntityTypeId() . '.' . $cloned_field_config->getTargetBundle() . '.' . $properties['id'];
return parent::cloneEntity($field_config, $cloned_field_config, $properties);
}
示例3: buildRow
/**
* {@inheritdoc}
*/
public function buildRow(EntityInterface $field_storage)
{
if ($field_storage->isLocked()) {
$row['class'] = array('menu-disabled');
$row['data']['id'] = $this->t('@field_name (Locked)', array('@field_name' => $field_storage->getName()));
} else {
$row['data']['id'] = $field_storage->getName();
}
$field_type = $this->fieldTypes[$field_storage->getType()];
$row['data']['type'] = $this->t('@type (module: @module)', array('@type' => $field_type['label'], '@module' => $field_type['provider']));
$usage = array();
foreach ($field_storage->getBundles() as $bundle) {
$entity_type_id = $field_storage->getTargetEntityTypeId();
if ($route_info = FieldUI::getOverviewRouteInfo($entity_type_id, $bundle)) {
$usage[] = \Drupal::l($this->bundles[$entity_type_id][$bundle]['label'], $route_info);
} else {
$usage[] = $this->bundles[$entity_type_id][$bundle]['label'];
}
}
$usage_escaped = '';
$separator = '';
foreach ($usage as $usage_item) {
$usage_escaped .= $separator . SafeMarkup::escape($usage_item);
$separator = ', ';
}
$row['data']['usage'] = SafeMarkup::set($usage_escaped);
return $row;
}
示例4: buildRow
/**
* {@inheritdoc}
*/
public function buildRow(EntityInterface $entity) {
$row = [
'data' => [
'label' => $entity->label(),
'target_type' => $this->entityManager->getDefinition($entity->getTargetEntityTypeId())->getLabel(),
'handler' => $entity->getHandlerPlugin()->getPluginDefinition()['title'],
'items' => $this->getQueueItemsStatus($entity),
] + parent::buildRow($entity),
'title' => $this->t('Machine name: @name', array('@name' => $entity->id())),
];
return $row;
}
示例5: buildRow
/**
* {@inheritdoc}
*/
public function buildRow(EntityInterface $field_storage)
{
if ($field_storage->isLocked()) {
$row['class'] = array('menu-disabled');
$row['data']['id'] = $this->t('@field_name (Locked)', array('@field_name' => $field_storage->getName()));
} else {
$row['data']['id'] = $field_storage->getName();
}
$field_type = $this->fieldTypes[$field_storage->getType()];
$row['data']['type'] = $this->t('@type (module: @module)', array('@type' => $field_type['label'], '@module' => $field_type['provider']));
$usage = array();
foreach ($field_storage->getBundles() as $bundle) {
$entity_type_id = $field_storage->getTargetEntityTypeId();
if ($route_info = FieldUI::getOverviewRouteInfo($entity_type_id, $bundle)) {
$usage[] = \Drupal::l($this->bundles[$entity_type_id][$bundle]['label'], $route_info);
} else {
$usage[] = $this->bundles[$entity_type_id][$bundle]['label'];
}
}
$row['data']['usage']['data'] = ['#theme' => 'item_list', '#items' => $usage, '#context' => ['list_style' => 'comma-list']];
return $row;
}