【发布时间】:2010-07-11 16:47:58
【问题描述】:
我 3 岁以上的 cakephp 并面临一个有点奇怪的问题 通过向插件控制器的操作提交表单(我正在使用 插件第一次)。在尝试了不同的已知事物后,我发布了 这个。
这里直截了当是我的“论坛”插件的 search_controller.php 的“索引”视图中的表单:
echo $form->create("Search", array('url'=>array('controller' =>
'search', 'action' => 'index','plugin'=>'forum'),
'id'=>'searchFormMain'));
<input type="text" name="data[Search][keyword]" style="width:357px; margin-left:9px;"><p><span id="searchButton"><input
type="image" src="/img/button_search.jpg" style="height:40px;width:
136px;border:0;" class="handcursor"></span></p>
</form>
当我将此表单提交给搜索控制器的“索引”操作时 论坛插件,以下代码不打印任何内容:
public function index($type='') {
if(!empty($this->data)) {
pr($this->data);
die;
}
}
如果我在相同的 beforeFilter 中尝试相同的代码 控制器,即 search_controller.php 它运行良好并打印为 如下:
Array
(
[Search] => Array
(
[keyword] => Hello Forum
)
)
最后是 beforeFilter 代码(search_controller.php 的):
public function beforeFilter() {
parent::beforeFilter();
if(!empty($this->data)) {
pr($this->data);
}
}
仅供参考,如果我注释掉“parent::beforeFilter();”也没关系或者 甚至禁用我的控制器的 $uses (如果他们看起来对你有疑问) 结果是相同的,即控件没有进入“索引”操作 在表单提交的情况下,在页面的情况下工作正常 称呼。页面的 url/action 是http://localhost.rfdf.org/forum/search/index。 如果我直接调用 url,它会很好地加载表单,但是当我提交它时,它 永远不会进入控制器的“索引”操作,因此没有视图 渲染。
如果我在“论坛”插件环境中尝试相同的代码集,即在普通应用程序中它工作得很好
过去 3 个多小时以来,我一直在努力寻找解决办法,但是 没有成功。我将不胜感激任何帮助解决这个难题。
【问题讨论】: