添加节点刷新视图
Posted
技术标签:
【中文标题】添加节点刷新视图【英文标题】:Add node refreshes view 【发布时间】:2012-09-27 17:51:01 【问题描述】:我想要一个节点视图,在它上面,一个添加新节点的表单,所以它很容易建立一个列表(比如说一个购物清单)。
当我提交表单时,我希望它通过 ajax 刷新视图以包含新节点。
实现这一目标的最佳方法是什么?
【问题讨论】:
【参考方案1】:这里有很多要求。我将假设您知道如何构建视图。使用页面输出。
使用 Drupal 表单 API 创建表单。设置一个自动完成字段并让您的提交处理程序在节点中的一个字段中设置一个值。将此表单放在一个块中 (How to allow multiple blocks in a module of Drupal) 并将其显示在此视图输出的页面顶部。
对于 ajax 的内容,我为我的公司写了一篇很棒的博文,概述了如何做到这一点:http://clikfocus.com/blog/simple-ajax-example-drupal-6-and-7
在你的回调中运行函数:
$view = views_embed_view('view_name', 'display_name', $args_array);
print $view;
确保你关闭了视图缓存,并且在你的 jQuery 中确保选择包裹视图的标签。
你在这里要求一个完整的模块,所以我现在不能写整个东西,但这应该让你开始。
【讨论】:
:-) 我有一个非常具体的要求。这看起来很棒 danielson - 我很擅长将元素放在一起,它是连接表单 api 和我不知道的视图。感谢您的指导,太棒了。 你打赌。我还找到了一个关于使用 ajax 构建表单自动完成的很酷的教程:w3shaman.com/article/creating-ajax-dropdown-drupal-7 谢谢 - 我已经接受了这个答案 - 我不知道如何接受答案。哦,是的,当然,它的大勾号。以上是关于添加节点刷新视图的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 drupal 6 中的自定义字段将自定义版本的节点/添加表单放在视图中?