Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql Laravel 5.1,雄辩,有很多评论_Mysql_Database_Eloquent_Many To Many_Laravel 5.1 - Fatal编程技术网

Mysql Laravel 5.1,雄辩,有很多评论

Mysql Laravel 5.1,雄辩,有很多评论,mysql,database,eloquent,many-to-many,laravel-5.1,Mysql,Database,Eloquent,Many To Many,Laravel 5.1,我遵循Jeffrey Way的很多教程,我得到了一切,一切都很好。不过,我想为我的多对多关系添加另一个功能,这是一个“注释”,为对象关系提供更多信息 我有两种型号: 第条[标识、标题、文本] 类别[身份证、头衔] 这是一个多对多的关系,所以我创建了一个透视表作为article\u category。此表有两列文章id和类别id,它们通过模型中的函数连接: Article.php: public function categories() { return $this->belong

我遵循Jeffrey Way的很多教程,我得到了一切,一切都很好。不过,我想为我的多对多关系添加另一个功能,这是一个“注释”,为对象关系提供更多信息

我有两种型号:

第条[标识、标题、文本] 类别[身份证、头衔]

这是一个多对多的关系,所以我创建了一个透视表作为
article\u category
。此表有两列
文章id
类别id
,它们通过模型中的函数连接:

Article.php:

public function categories()
{
    return $this->belongsTo('App\Category');
}
&Category.php

public function articles()
{
    return $this->belongsTo('App\Article');
}
然而,我想在pivot表中添加另一个名为
comment
的字段,在这里我可以描述为什么将本文添加到这个特定类别中。添加列不是问题,但我不知道如何从(比如)文章实例检索此注释:

$articleCategoryComment = Article::find(1)->commentFromPivotTable;
我总是可以定义另一个oneToMany关系,并创建另一个表,用字段
[artice\u id,category\u id,comment]
保存注释,但我想知道是否有更好/更简单的方法

此外,任何关于数据库结构的好资源都将受到极大的赞赏。我更喜欢一大堆关于如何在MySQL中正确操作的例子,但是一本从头开始解释的书也是一个很好的推荐。然而,目前我没有时间深入研究,但它将被书签,以备将来阅读


谢谢

你应该在多对多关系中使用belongtomany。如果要在数据透视表上添加其他列,请使用withPivot()方法。从文档中:

return $this->belongsToMany('App\Role')->withPivot('column1', 'column2');
您可以在此处找到更多信息: