问题
有可能是一个更简单的方法来做到这一点,我可能会使它变得复杂。我有Articles
和Comments
。我建立了一个API。关系Laravel API
但是,我需要Articles
有很多评论和Comment
有一个文章。
我的尝试:
我做的第一件事就是去Article
模型,并插入此函数:
public function comment()
{
return $this->hasMany('Comment');
}
而且在Comment
型号:
public function article()
{
return $this->belongsTo('Article', 'article_id');
}
上述方法的问题是,我不知道如何去处理它控制器。我从调用中返回一个json响应,但决定使用变压器。
以下是我的CommentController
存储功能。
public function store(Request $request)
{
return Comment::create($request->all());
}
如何判断哪条评论属于哪篇文章以及如何在文章中更新我们有一条或多条评论?
之后,我决定去“手动”路线,并在Article
上插入一个名为'comments_id'
的字段,将其更改为模型上的数组,但我不知道如何更新Article
上的数组。
这就是我得到的。
public function store(Request $request)
{
$article = Article::findOrFail($request->article_id);
$article->update(array_add($request->id));
return Comment::create($request->all());
}
这是错误响应:
"Missing argument 2 for array_add(), called in /var/www/html/larapi/app/Http/Controllers/CommentController.php on line 26 and defined"
我该如何在变压器上添加? – Rosenberg
我的意思是让我们说我想显示评论属于哪篇文章。我试过'Comment :: article-> get()'但是我得到这个错误:'解析错误:语法错误,意外' - >'' – Rosenberg