我有三个表格:商品,图片和商品图片
我要输出$ article-> file
在laravel 5.0中非常简单
$ article-> article_images-> file;
但是现在他们删除了此功能,我也在vuejs中使用了输出。
文章
id-整数
名称-字符串
article_images
id-整数
article_id-整数
image_id-整数
图片
id-整数
文件-字符串
答案 0 :(得分:0)
您需要定义article和article_images之间的关系
public functon images() {
return $this->belongsTo('...\ArticleImage');
}
之后,您可以返回具有关联关系的文章
return Article::find($id)->with('images');
请尝试一下,让我知道它如何工作:)
答案 1 :(得分:0)
首先,您必须在您的模型中添加关系, 因此,在这种情况下,您的文章有很多图像,一个图像属于许多文章,因此您应该删除article_images并在您的模型(文章和图像)中添加此功能
// In Article model
public function Images()
{
return $this->belongsToMany('App\Image');
}
// In Images model
public function Article()
{
return $this->belongsToMany('App\Article');
}
之后,您可以使用以下代码获取首选文章的所有图像 例如:
$images = Article::first()->images();
答案 2 :(得分:0)
否:HasManyThrough
但是:othersToMany
解决了问题!
阅读以下代码:
class Article extends Model { public function images() { return $this->belongsToMany('App\Image','article_images','image_id','article_id'); } }