首页 / 帖子
Drupal 的 page render 如何同时输出一个 form 跟一个 table?

Drupal7的 page 是通过 render 一个 array 输出的,但是同时输出一个 form 跟其他元素怎么办?

example 也没有,请指点。


PS: Drupal6的写法会,就是两个都 render 出来,再字符串相加。


谢谢!

2个答案
闻涛
发布于:2015-09-20 10:58
$render = array(
  'items' = array(
    '#markup' => theme('item_list', $theme_args);
  ),
  'form' = drupal_get_form('mymodule_myform_function');
);
return render($render);

Drupal7里面的page callback返回一个数组,要输出的元素组成一个类似formapi的数组返回即可,顺序就按照数组的顺序render,这个跟D6不同,但是Form比较特殊,drupal_get_form直接能获取这个数组,因此不需要写其他选项。

当然,也可以直接类似D6的写法:

theme('item_list', $theme_args) . render(drupal_get_form('myform'));


陈蹊
发布于:2015-10-22 10:19

d7兼容d6的 同样的写法 一样可以的