将表格集成到块中的问题 -- forms 领域 和 blocks 领域 drupal 相关 的问题

Problems to integrate a form into a block


0
vote

问题

中文

到目前为止,表单在块中呈现,但显示以下错误:

注意:未定义索引:ios_lang_checkbox_nameform_function drupal_retrieve_form()

警告:call_user_func_array()期望参数1是有效的 回调,找不到函数'ios_lang_checkbox_nameform_function' drupal_retrieve_form()中的函数名称无效

  <?php  function ios_lang_checkbox_block_info() {   return array(     'ios_lang_checkbox' => array(       'info' => t('Ios Like language switcher'),       'description' => t('Ios Like language switcher')     )   ); } function ios_lang_checkbox_block_view($delta='') {     $block['content'] = drupal_get_form('ios_lang_checkbox_nameform');    switch($delta) {     case 'ios_lang_checkbox':       $block['subject'] = null; // Most forms don't have a subject        $block['content'] = drupal_get_form('ios_lang_checkbox_nameform_function');       break;    }    return $block;  }  function ios_lang_checkbox_menu() {     $items['ios_lang_checkbox'] = array(         'title' => 'View the sample form',         'page callback' => 'drupal_get_form',         'page arguments' => array('ios_lang_checkbox_nameform'),         'access callback' => TRUE,         'type' => MENU_NORMAL_ITEM     );     return $items; }   /**  * Define a form.  */ function ios_lang_checkbox_nameform($form, &$form_state) {      $options = array(         'de' => t('de'),         );     $form['ios'] = array(         '#title' => t('Your Name'),         '#type' => 'checkboxes',         '#description' => t('Choose language'),         '#options' => $options,     );     $form['submit'] = array(         '#type' => 'submit',         '#value' => t('Submit')     );     return $form; }   ?>    

非常感谢!

英文原文

So far, the form is rendered in the block, but the following errors are displayed:

Notice: Undefined index: ios_lang_checkbox_nameform_function in drupal_retrieve_form()

Warning: call_user_func_array() expects parameter 1 to be a valid callback, function 'ios_lang_checkbox_nameform_function' not found or invalid function name in drupal_retrieve_form()

<?php  function ios_lang_checkbox_block_info() {   return array(     'ios_lang_checkbox' => array(       'info' => t('Ios Like language switcher'),       'description' => t('Ios Like language switcher')     )   ); } function ios_lang_checkbox_block_view($delta='') {     $block['content'] = drupal_get_form('ios_lang_checkbox_nameform');    switch($delta) {     case 'ios_lang_checkbox':       $block['subject'] = null; // Most forms don't have a subject        $block['content'] = drupal_get_form('ios_lang_checkbox_nameform_function');       break;    }    return $block;  }  function ios_lang_checkbox_menu() {     $items['ios_lang_checkbox'] = array(         'title' => 'View the sample form',         'page callback' => 'drupal_get_form',         'page arguments' => array('ios_lang_checkbox_nameform'),         'access callback' => TRUE,         'type' => MENU_NORMAL_ITEM     );     return $items; }   /**  * Define a form.  */ function ios_lang_checkbox_nameform($form, &$form_state) {      $options = array(         'de' => t('de'),         );     $form['ios'] = array(         '#title' => t('Your Name'),         '#type' => 'checkboxes',         '#description' => t('Choose language'),         '#options' => $options,     );     $form['submit'] = array(         '#type' => 'submit',         '#value' => t('Submit')     );     return $form; }   ?>  

Thanks a lot!

     
         
         

回答列表

2
 
vote
vote
最佳答案
 

你有 ios_lang_checkbox_nameform_function 末尾的 _function ......只是将该行更改为:

  $block['content'] = drupal_get_form('ios_lang_checkbox_nameform');.    

传递给 drupal_get_form() 需要与函数名称本身完全相同,无需放入 _function 最后:)

 

You've got _function on the end of ios_lang_checkbox_nameform_function...just change that line to:

$block['content'] = drupal_get_form('ios_lang_checkbox_nameform');.  

The string passed to drupal_get_form() needs to be exactly the same as the function name itself, no need to put _function on the end :)

 
 

相关问题

2  在D7中使用DRUPAL_GET_FORM()时替换默认提交处理程序  ( Replace default submit handler when using drupal get form in d7 ) 
我正在从Commerce_Coupon模块中呼叫现有表单,该模块运行默认提交处理程序回调(Commerce_coupon_form_submit)。 我的表单从该表单上构建,只需尝试替换默认的'#submit'值,以调用我自己的提交函数而不是默认的CommerCE_COUPON One。我正在使用drupal_get...

1  多个文本字段值  ( Multiple textfield values ) 
im使用form api和我试图在一个类型下制作一组字段,例如一个电话号码,你将有3个字段1是区号,另一个2个字段是数字 我会认为它会是这样的。 $form['phone'] = array( '#title' => 'Phone Number', '#tree' => TRUE ); $f...

1  如何在Hirterchical Select中设置根术语  ( How to set root term in hirerchical select ) 
我有一个如下词汇表: 父母1 孩子1 孩子2 父母2 孩子3. 孩子4 我希望下拉目仅显示父母2及其孩子,因此我将root_term id更改为父ID 'root_term'=&gt;如果要仅在具有该ID的术语下面显示下面的条款,则在此输入术语ID。 函数mymodule_alter_form_...

18  如何在表单API中检查复选框  ( How to check a checkbox by default in forms api ) 
我想知道如何默认检查复选框? #default_value 错误的属性? $form['ios'] = array( '#title' => t(''), '#type' => 'checkboxes', '#description' =...

3  为我的模块设置页面主题表单的问题  ( Problem with theming form for my module setting page ) 
我正在尝试主题我的模块设置页面。 我的环境 版本drupal 7 模块名称: actionAdscatalog 文件系统: ActionAdscatalog - actionadscatalog.info - ActionAdscatalog.module - ActionAds...

-1  为什么块添加节点表单返回错误?  ( Why block with add node form returnes errors ) 
要在特定地点显示添加节点表单,我在带内容的块页面上创建了一个新块: <?php global $user; module_load_include('inc', 'node', 'node.pages'); $node = (object) array('uid' => $user->uid, 'name' ...

2  使用面板创建自定义翻译页面?  ( Using panels to create a custom translation page ) 
我想用翻译节点并排使用翻译的页面。我想到这一点的最简单方法将是面板,但我无法弄清楚如何。是否可以将翻译表格放在面板上? ...

2  覆盖类div form-api  ( Overriding class div form api ) 
目的: 覆盖从Drupal Commerce Checkout窗格中的Custom AddrameField实现中从Form-API中吐出的默认类和div。我需要根据他们的单独地址的数量来使类/ div可预测。我根据礼品订阅的数量(x)动态创建(x)addressfields,以便我可以组合订阅的地址信息。 注意:...

0  以何种方式创建诸如复选框的大海?  ( Any way to create a permissions like sea of checkboxes ) 
基本上我正在寻找这样的东西(方括号是复选框): A B C D E 1 [] [] [] [] [] 2 [] [] [] [] [] 3 [] [] [] [] [] ...

0  从引用中依赖下降  ( Dependent drop down from referencies ) 
我需要从几种引用的实体类型(term_reference,node_reference,user_reference)中创建依赖的下拉列表(如分层选择)。 更清晰: - BMW - - X1 - - - E84 - - X3 - - - E83 - - - F25 - - X5 - - - And so on.....

0  当#Access为false时,在图像字段中的实地权限伪造时,需要获取错误字段  ( Get error field is required when access is false with field permission in imag ) 
与 fieldpermission 模块我在某些字段上设置了一些权限(字段是配置文件类型(我使用 998876663 模块)),其中一些是 required < / code>,显示字段还可以,(它们不显示, #access 属性为 false )。但是,当我保存节点时,将 field is required 错误给...

0  使用drupal形式API更改复选框后更改文本  ( Altering the text after a checkbox using the drupal form api ) 
我得到了以下问题。客户端希望复选框之后的文本是与其他页面的链接,因此... 之间 我有以下代码: $form['boxes_brands'] = array( '#type' => 'checkboxes', '#title' => '<div id="title-container">Merke...

5  以不需要的形式制作所有字段  ( Make all the fields in a form not required ) 
我知道,当我想运行 998876662 hook_form_alter() 中的字段的属性时,我只需要设置 99887663 属性一个特定字段 FALSE 。 如何删除所有必填字段的 #required 属性?我想在用户具有特定角色时使不需要的字段。 你有什么想法吗? ...

0  我可以突出显示无效的表单字段,而不为它分配消息吗?  ( Can i highlight an invalid form field without assigning a message for it ) 
我有一个表单,它呈现出稍后组合成单个电话号码的三个输入字段。当电话号码未验证时(不匹配 /^d{10}$/ ),我想显示一条消息,说手机号码不正确格式化,但我想突出显示所有三个输入字段。这可能吗?我拿出最好的就是如此: form_set_error('firstBox', $theMessage); form_s...

7  如何创建钩子以改变每个节点表单?  ( How to create hook for altering every node form ) 
我试过: mymodule_form_node_alter mymodule_form_node_form_alter 和全球钩子: function mymodule_form_alter(&$form, $form_state, $form_id) { if ($form['#id'] == ...

2  如何防止在联系人表格中垃圾邮件[已关闭]  ( How to prevent from getting spammed in a contact form ) 
关闭。这个问题需要更多聚焦。它目前不接受答案。 想要改进这个问题?更新问题,因此它仅关注一个问题,仅通过编辑此帖。 closed 3年前。 ...

0  表单API Managed_file不会显示  ( Form api managed file doesnt show up ) 
我正在使用drupal 7.当我使用以下代码时,表单中没有显示;当我使用文件更改Managed_file时,一切都很好。 $form['mfile'] = array ( '#type' => 'managed_file', '#title' => t('File to upload'), '#siz...

5  为什么变量_get()返回复选框列表的所有值,即使未选中复选框?  ( Why variable get returns all values of checkboxes list even if checkbox is no ) 
我有系统设置中的复选框列表: $form['mymodule_menu_perm_menus'] = array( '#type' => 'checkboxes', '#title' => t('Menus'), '#options' => menu_get_menus(TRUE), ...

0  如何更改节点表单上的菜单父选项列表?  ( How to alter menu parent select list on node form ) 
我想修改选择列表以选择菜单父级以用于创建节点(从菜单选项卡)。我正在寻找 $form 变量,但我没有看到此列表数据。如何更改此选择列表? ...

1  如何在hook_node_load()中添加表单到$节点?  ( How to add a form to node in hook node load ) 
我想在传递到主题层之前向节点添加表单。 我的模块有一个 hook_node_load < / a>,如下: function gp_shop_node_load($nodes, $types) { foreach($nodes as $nid => $node) { //Determine if w...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.