【发布时间】:2013-04-05 05:15:10
【问题描述】:
几个月以来我一直在使用 cakephp,今天遇到一个问题,我不知道为什么它不能像往常一样工作。
我有三张桌子:
帖子 厘米 post_cmets
在模型中,我设置了:
评论模型:
var $hasAndBelongsToMany = array('Post');
后模型
var $hasAndBelongsToMany = array('Comment');
然后在我的控制器中,例如 PostController:
$this->set('comments', $this->Post->Comment->find('list', array('order' => 'Comment.id')));
然后在我的帖子视图中我有:
<?php
echo $this->Form->create('Post');
echo $this->Form->input('name', array('label' => 'Name', 'maxlength' => '100'));
echo $this->Form->input('Comment.Comment', array('label' => 'New Comment', 'type' => 'select', 'multiple' => true));
echo $this->Form->submit('Add', array('class' => 'button'));
?>
在我的其他项目中它总是有效! 我的“评论”总是显示在列表中,但在这里,我不知道为什么它不起作用,什么都没有显示,是我忘记了什么吗?
问候,
4m0ni4c.
【问题讨论】:
-
您可能不想对帖子和 cmets 使用 HABTM 关系,因为评论不能属于多个帖子,它通常只属于一个帖子,一个帖子可以有多个 cmets .因此
Post应该haveManyComment,而Comment应该belongToPost。 -
我选择这个例子来说明我的问题,我的情况,确实需要HABTM关系:)
-
我的主要问题是我通常不需要在其他输入中指定“选项”值,但是在这里,我真的不知道为什么,如果我不指定这个变量,我无法显示我的评论:/
-
如果您向我们提出实际问题,我们或许能够更好地诊断。
-
实际问题是,如果不设置“options”变量,我无法在通过输入“Comment.Comment”设置的列表中显示我的评论。
标签: cakephp has-and-belongs-to-many