Drupal:为什么表单 api 在 _page 函数之外无法工作?

发布于 2024-11-07 15:55:29 字数 369 浏览 0 评论 0原文

我一直在阅读基本表单 api,并提出了一些基本的可行表单...但是我想在我的表单中附加其他内容,问题是它们无法相处。

如果我将 drupal_get_form 放在 main _page() 函数中,效果很好...... 如果我将 drupal_get_form 放在不同的函数中,它只输出“Array”。 如果我将 drupal_get_form 结果放入变量中:

 $content = $flash;
 $content .= drupal_get_form;

我得到一个“数组”,它不会呈现表单。但闪光灯出现了。 (??) 这是为什么?

顺便说一句,我正在使用 Drupal 7,

感谢您的阅读。

I've been reading up on the basic form api and came up with some basic workable forms... but there's this other content I'd like appended with my form, trouble is that they won't get along together.

If I put the drupal_get_form in the main _page() function, it works great ...
If I put the drupal_get_form in a different function, it only outputs 'Array'.
If I put the drupal_get_form results in a variable:

 $content = $flash;
 $content .= drupal_get_form;

I get an 'Array', it won't render the form. The flash appears though. (??) why is that?

I am using Drupal 7 btw,

Thanks for reading.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

逆蝶 2024-11-14 15:55:29

drupal_get_form() 不返回字符串,而是返回 Drupal 7 中所谓的“渲染数组”。要将其渲染为字符串,请使用 drupal_render()

$content .= drupal_render(drupal_get_form(...));

或者您可以$content 也是渲染数组:

$content['flash']['#markup'] = $flash;
$content['form'] = drupal_get_form(...);

优点是您可以在页面回调、块和类似位置返回渲染数组,并且它只会在页面请求结束时渲染,从而使其他模块可以更改内容的结构。

drupal_get_form() does not return a string but a so called "render array" in Drupal 7. To render it into a string, use drupal_render():

$content .= drupal_render(drupal_get_form(...));

Or yo could make $content a render array too:

$content['flash']['#markup'] = $flash;
$content['form'] = drupal_get_form(...);

The advantage is that you can return render arrays in page callbacks, blocks and similar places and it will only be rendered at the end of the page request, giving other modules to change the structure of the content.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文