我需要一个允许同时创建多个相关节点的表单。所有节点都涉及CCK字段。
我想尽可能/实际地使用 CCK 的内置验证、提交、输入小部件和安全功能。
在 Drupal 6 中完成此任务的最佳方法是什么?是否有任何“最佳实践”或文档?
这是我能看到的 3 种可能性。我很想知道这些是否可行,或者是否有更好的选择。
1.
- 从内容类型 foo 的标准节点创建表单开始。
- 修改表单,为内容类型栏添加字段,使用钩子(Hook) form_alter [是否可以直接插入内容类型栏的 cck 小部件?]
- 在提交表单时使用自定义提交处理程序创建 bar 类型的节点 [可以调用标准cck处理程序吗?还是我需要“手动”构造节点对象、进行自己的验证并使用 node_save?]
2.
- 创建一个新的自定义表单,将相关内容类型的“正常”节点创建表单串联起来。
- 然后使用 hook form_alter 根据需要修改表单。
- 允许标准的 cck 提交处理程序完成创建节点的工作。
3.
- 从头开始创建自定义表单
- 使用节点准备、节点保存等在我自己的提交处理程序中创建节点。
如果找到documentation on re-using the standard node creation form ,但是没有提到同时创建多个节点。
advomatic 网站上的一篇文章中记录了使用 hook nodeapi 和 hook form_alter,但特定方法 descrube 似乎需要用“虚拟”字段污染其中一种内容类型。
非常感谢您的帮助!
最佳答案
拥护者发布了一个很好的解决方案。
http://www.advomatic.com/blogs/jonathan-delaigle/multiple-nodes-single-node-submission
关于drupal - 在 Drupal 中使用单个自定义表单创建多个 CCK 节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1208460/