CakePHP-存储外键
我有三种型号:CakePHP-存储外键,cakephp,Cakephp,我有三种型号: 使用者 注 评论 一个用户可以有多个注释(我所说的注释是指Facebook之类的状态),一个注释可以有多个注释 在comment表中,我想存储user_id和note_id,它们实际上是外键 注释控制器: public function userscomment() { if (!empty($this->data)) { $commentdata = $this->data; $commentdata['Comment
public function userscomment()
{
if (!empty($this->data))
{
$commentdata = $this->data;
$commentdata['Comment']['user_id'] = $this->Auth->user('id');
$this->Comment->save($commentdata);
}
现在,由于用户id很容易识别,所以它存储在数据库中,但是如何识别注释是针对此注释的
如何存储注释的id?在您的视图中,如果有用于输入注释的表单,您可以指定一个表单操作,将注释id发送到控制器,如下所示: app/View/Comments/userscomment.ctp
echo $this->Form->create('Comment', array(
'url' => array('385') // 385 is the note_id
));
echo $this->Form->textarea('comment');
echo $this->Form->end('Submit Comment');
public function userscomment($note_id) {
if (!empty($this->data)) {
$commentdata = $this->data;
$commentdata['Comment']['user_id'] = $this->Auth->user('id');
$commentdata['Comment']['note_id'] = $note_id;
$this->Comment->save($commentdata);
}
}
app/Controller/CustomersController.php
echo $this->Form->create('Comment', array(
'url' => array('385') // 385 is the note_id
));
echo $this->Form->textarea('comment');
echo $this->Form->end('Submit Comment');
public function userscomment($note_id) {
if (!empty($this->data)) {
$commentdata = $this->data;
$commentdata['Comment']['user_id'] = $this->Auth->user('id');
$commentdata['Comment']['note_id'] = $note_id;
$this->Comment->save($commentdata);
}
}
控制器:
公共功能说明视图()
{
视图:
分享:
笔记
你的页面上通常会有一个隐藏的表单输入,带有便笺id:
你能说得更清楚一点吗,我不明白这就是问题所在。这里你手动输入了id,但我不知道如何自动调用id。就像每个便笺都有一个唯一的id一样,如何调用它,因为我们是通过Auth co调用用户id的mponent。好的,在某个地方你必须知道视图中的注释ID,不是吗?否则你如何显示注释或已经存在的注释?你能发布你的视图HTML以便我可以查看吗?检查下面的视图和控制器。