我已经实现了一个 hook_menu() 并调用了一个带有 page_callback 的函数。
我可以使用函数 bla_form($var) 定义在那里传递参数。当我回电时,return drupal_get_form('bla_node_form', $new_node, $project_id)
我的 $var in $form_state['args'][1]
.
如果我通过了array(4)
,我会得到$form_state['args'][1]
.
如果我通过了array('project_id' => 4)
,我会得到$form_state['args'][1]['project_id']
.
我想得到$form_state['args']['project_id']
.
例子:
function form_example_menu () {
$items['node/add/bla/project/%'] = array(
'page callback' => '_bla_form',
'page arguments' => array(4),//This is where I want to pass a keyed array!!!
'access callback' => TRUE,
);
return $items;
}
function _bla_form ($project_id = array()) {
module_load_include('inc', 'node', 'node.pages');
$new_node = new stdClass;
$new_node->type = 'bla';
$new_node->language = LANGUAGE_NONE;
return drupal_get_form('bla_node_form', $new_node, $project_id);
}
作为一种解决方法:如果我不能这样做:我如何确定我是否阅读了 $form_state['args'] 我正在使用正确的元素来获取我的论点(而不是其他一些)?
谢谢