与CakePHP一起使用HtmlHelper时出现错误信息

时间:2011-01-11 21:14:15

标签: php cakephp html-helper

全新的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>

2 个答案:

答案 0 :(得分:4)

inputtextareasubmit 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()