我有两张桌子:"产品"和" productPhotos"。 每个产品都有唯一的id = Product_ID。 每个productPhoto都有一个唯一的id = ProductPhoto_ID。 在我的表productPhoto中还有照片,这在我的迁移中是这样指定的:$ table-> binary(' photo');这是用于上传图片。
在表格产品中我是ProductPhoto_ID(它是一种关系)。 但是我该如何添加照片'?
答案 0 :(得分:1)
您需要为每个表创建模型。
最好对表/列名称使用laravel约定。
所以我会这样称呼他们:
产品 - ID - 等......
照片 - ID - product_id - 等......
然后创建2个模型:
class Product extends Model
{
protected $table = 'products';
public function photos()
{
return $this->hasMany('App\Photos');
}
}
class Photo extends Model
{
protected $table = 'photos';
public function product()
{
return $this->belongsTo('App\Product','product_id');
}
}
然后在你的控制器中,你可以得到这样的关系:
$ product = Product :: find($ id) - > with(' photos');
这将返回一个产品模型,其中包含一个名为photos的属性,该属性是与其相关的所有Photo模型的集合。
查看https://laravel.com/docs/5.1/eloquent-relationships
干杯