渲染

admin 提交于 周三, 06/07/2023 - 15:21

渲染

在 Drupal 中,视图层的处理被称作 渲染

渲染 指的是,把数据输出为特定的格式,可以是 HTMLXMLJSONPDF,等等任何格式。 Drupal 本身是一个 Web 系统,HTML 是默认的最基本的数据输出格式。

渲染数组

在前面编写 Hello World 模块时,在控制器中有如下代码:

function helloWorld() {
  $render_array = [
    '#theme' => 'hello_world',
    '#name' => '小明'
  ];
  return $render_array;
}

这个控制器返回了一个数组,Drupal 会把这个数组渲染成 HTML 输出到浏览器。 在 Drupal 中,这种被用于渲染的数组,被称为 渲染数组(Render Array), 渲染数组中以 # 开头的键值被称为渲染数组的属性,具有特别的含义。

渲染模板

在上述的控制器代码中:

  • #theme 指明使用哪个模板进行渲染,hello_world 是模板名称。
  • #name name 不是 Drupal 预定的属性,是模板中自定义的变量名,数组中的值会作为模板变量传给模板。