[英]Confused with Eloquent relationship | Simple Phone Inventory Database
我很困惑为我的数据库模式创建 Laravel 模型类。 如何建立关系?
表:
table_phone
id
imei
model_id
table_model
id
name
photo_id
manufacturer_id
table_manufacturer
id
name
photo_id
数据类:
class Phone extends Model {
function model() {
}
}
class PhoneModel extends Model {
function getPhones() {
}
function manufacturer() {
}
}
class PhoneManufacturer extends Model {
function getPhones() {
}
function getModels() {
}
Phone
类有一个PhoneModel
类(one-to-one)
。
PhoneModel
类具有一个PhoneManufacturer
类(one-to-one)
。
PhoneManufacturer
类应该有一个方法getModels()
,它应该返回与manufacturer_id
PhoneModel
关联的所有PhoneModel
类。
PhoneManufacturer
类应该有一个方法getPhones()
它应该返回所有Phone
有关联的类别manufacturer_id
在PhoneModel
类。
PhoneModel
类应该有一个getPhones()
方法,它应该返回与model_id
关联的所有PhonePhone
类。
Phone
类应该有model
方法和manufacturer
方法。 PhoneModel
类应该有manufacturer
方法。
您必须以这种方式创建关系:
class Phone extends Model {
public function phonemodel()
{
return $this->hasOne(PhoneModel::class)
}
}
class PhoneModel extends Model {
public function phone()
{
return $this->belongsTo(Phone::class)
}
public function manufacturer()
{
return $this->belongsTo(Manufacturer::class)
}
}
class Manufacturer extends Model {
public function model()
{
return $this->hasMany(PhoneModel::class)
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.