我是Cakephp中的新用户,试图在不更新页面的情况下添加评论。
我已按照以下步骤操作:
我在默认页面中添加了以下行
echo $this->javascript->link('prototype');
我在Appcontroller.php中添加了var $helpers = array('Html','Form','Ajax','Javascript');
我在/posts/view.ctp
中添加了以下行<h2>Comments</h2>
<?php
foreach($comments as $comment):
?>
<div class="comment">
<p><b><?php echo $comment['Comment']['name'];?></b></p>
<p><?php echo $comment['Comment']['content'];?></p>
</div>
<?php
endforeach;
?>
我添加行以显示表单以添加评论
<?php
echo $this->ajax->form(array('type' => 'post','options' =>array('model'=>'Comment','update'=>'comment','url' => array('controller'=>'comments','action' => 'add'))));
echo $this->form->input('Comment.name');
echo $this->form->input('Comment.content');
echo $this->form->input('Comment.post_id',array('type'=>'hidden','value'=>$post['Post']['id']));
echo $this->form->end('Add Comment');
?>
我在CommentsController.php中放置了以下代码
<?php
class CommentsController extends AppController
{
var $name = 'Comments';
function add() {
if(!empty($this->data))
{
$this->Comment->create();
if($this->Comment->save($this->data))
{
$comments = $this->Comment->find('all',array('conditions'=>array('post_id'=>$this->data['Comment']['post_id']),'recursive'=>-1));
$this->set(compact('comments'));
$this->render('add_success','ajax');
}
else
{
$this->render('add_failure','ajax');
}
}
}
}
?>
我正在使用cakephp 2.2.5。这段代码没有任何反应。我不知道该怎么办。请hekp。 Thanx提前:))