【问题标题】:using module_invoke_all to submit a form question使用 module_invoke_all 提交表单问题
【发布时间】:2011-06-15 12:05:22
【问题描述】:

这里有更详细的解释: 我正在使用带有文件下载功能模块(uc_file 模块)的 ubercart 模块。 我创建了一个产品类(就 drupal 系统而言,它是一种新的内容类型)并向其添加一个 cck 文件字段。 我想要实现的是以下行为: 一旦用户保存了我的产品类的新节点,我希望将上传的文件作为文件下载功能自动添加到产品类中。 我知道我可以破解函数 uc_file_feature_form_submit($form, &$form_state),做它在我的模块代码中所做的事情,但我宁愿调用它,因为将来对 uc_file 模块进行更改会更轻松(因为我正在调用它的功能,我不在乎它是否会在未来改变)。 所以,要调用 uc_file_feature_form_submit 函数,我需要构建假的 $form、&$form_state 参数,我知道我可以 print_r 那些数组,并从那里构建它,问题是这些数组中有很多数据不是强制性的,我想知道我必须自己构建的那些强制性字段是什么。 谢谢...

【问题讨论】:

  • 你能提供更多关于你想要做什么的背景吗?我认为,如果您提供一些有关您从何处尝试做的事情的背景信息,我们可以为您提供更好的帮助。

标签: drupal drupal-6 drupal-modules drupal-forms


【解决方案1】:

简短回答:查看您尝试调用的提交函数。它使用的表单值是您需要的值。

长答案。 . .需要更多信息才能给出更好的答案。

【讨论】:

  • 感谢您的回答。我已更改我的问题以包含更详细的信息。你能再读一遍吗?
  • 事实证明,这个案例的答案非常简单。我查看了函数 uc_file_feature_form_submit,查看了它使用了哪些参数,将这些参数添加到我的假 $form_state arr 中。它正在工作。非常感谢。
【解决方案2】:

您可以使用drupal_execute() 以编程方式执行表单。我不确定它是否适用于文件。

【讨论】:

    猜你喜欢
    • 2010-10-09
    • 1970-01-01
    • 2023-02-04
    • 2012-08-02
    • 2020-07-07
    • 1970-01-01
    • 1970-01-01
    • 2021-05-13
    • 2015-07-09
    相关资源
    最近更新 更多