📜  drupal 8 获取表单实体 (1)

📅  最后修改于: 2023-12-03 14:40:53.181000             🧑  作者: Mango

Drupal 8 获取表单实体

Drupal 8 中的表单实体(form entity)是指一个表单或者一个包含表单元素的实体。在 Drupal 中,表单实体通常是使用 Form API 来构建的。

下面是获取 Drupal 8 表单实体的代码示例:

use Drupal\Core\Entity\EntityTypeManagerInterface;

/**
 * Returns a form entity.
 */
function get_form_entity(EntityTypeManagerInterface $entity_type_manager, $entity_type, $entity_id) {
  $entity = $entity_type_manager->getStorage($entity_type)->load($entity_id);

  if (!$entity) {
    return NULL;
  }

  $form_builder = \Drupal::service('entity.form_builder');
  $form = $form_builder->getForm($entity);

  return $form;
}

该函数接收三个参数: $entity_type_manager,用于获取实体存储器; $entity_type,用于指定实体类型; $entity_id,用于指定要获取的实体 ID。

返回的是一个由 $form_builder->getForm() 生成的 Drupal 表单数组。

参考资料