全新的CakePHP用户;几个小时前刚刚开始安装并运行(或者我想。)我一直在浏览blog tutorial并且一切都在顺利进行,直到我点击添加帖子部分。我想也许我在某个地方弄错了,所以我直接从教程中复制并粘贴了代码,当我尝试转到localhost / cakeBlogTest / posts / add时,我仍然遇到这些错误。谁能帮我吗?我安装了最新的稳定版CakePHP。
警告(512):方法HtmlHelper :: input不存在[CORE / cake / libs / view / helper.php,第143行]
警告(512):方法HtmlHelper :: tagErrorMsg不存在[CORE / cake / libs / view / helper.php,第143行]
警告(512):方法HtmlHelper :: textarea不存在[CORE / cake / libs / view / helper.php,第143行]
警告(512):方法HtmlHelper :: submit不存在[CORE / cake / libs / view / helper.php,第143行]
编辑添加:
我能够在本教程的另一部分中使用$ html->链接,因此它似乎确实找到了帮助文件。我只是查看了帮助文件,输入,textarea和提交确实存在,但tagErrorMsg没有。是否有可能教程已过时并使用当前版本的CakePHP中不再存在的位?如果是这样,我用什么代替tagErrorMsg?
更多补充:
直接从教程中复制/粘贴代码:
<h1>Add Post</h1>
<form method="post" action="<?php echo $html->url('/posts/add')?>">
<p>
Title:
<?php echo $html->input('Post/title', array('size' => '40'))?>
<?php echo $html->tagErrorMsg('Post/title', 'Title is required.') ?>
</p>
<p>
Body:
<?php echo $html->textarea('Post/body', array('rows'=>'10')) ?>
<?php echo $html->tagErrorMsg('Post/body', 'Body is required.') ?>
</p>
<p>
<?php echo $html->submit('Save') ?>
</p>
</form>
答案 0 :(得分:4)
input
,textarea
,submit
不 HtmlHelper
属于FormHelper
在您的观看次数中,您应使用$this->Form->input('test')
代替$this->Html->input('test')
This tutorial属于cakephp v1.1(显然已过时)
了解cakePHP的latest tutorial v1.3
答案 1 :(得分:0)
现在tagErrorMsg函数更改为tagIsInvalid,现在它在“FormHelper”类中但在它之前是在HtmlHelper类中。所以现在我们应该使用它像 - &gt; $ this-&gt; Form-&gt; tagIsInvalid()或$ form-&gt; tagIsInvalid() 并且不喜欢$ this-&gt; Html-&gt; tagIsInvalid()