【发布时间】:2020-09-05 02:02:38
【问题描述】:
我在 laravel 框架中有一个四表:
用户: id_user, 电子邮件, 密码, profile_image, 全名, 性别, 年龄, 居住国家, city_if_residence,
事件 id_event, id_user, name_event
MEMBER_EVENTS, id_member, id_user, id_event,
存储 id_storage, id_event, name_storage,
我有一个响应 json:
{
"success": true,
"event": [
{
"id_event": 1,
"id_user": 1,
"name_event": "new event",
"place_event": "Chocen, wladyslawa lokietka 424",
"time_event": "19:00",
"description": "description",
"first_storage_file": "1598548420.jpg",
"longitude": "124124",
"latitude": "12312.123123",
"storage_file": 1,
"storage": [
{
"id_storage": 1,
"id_event": 1,
"storage_file_title": "profile.jpg",
"created_at": null,
"updated_at": null
}
]
},
{
"id_event": 2,
"id_user": 1,
"name_event": "new event",
"place_event": "Chocen, wladyslawa lokietka 424",
"time_event": "19:00",
"description": "description",
"first_storage_file": "1598551003.jpg",
"longitude": "124124",
"latitude": "12312.123123",
"storage_file": 0,
"storage": []
}
]
}
我想接收所有事件,其中事件中将是属于事件的所有用户, 创建事件的用户的数据。例如:
{
"success": true,
"event": [
{
"id_event": 1,
"id_user": 1,
"name_event": "new event",
"place_event": "Chocen, wladyslawa lokietka 424",
"time_event": "19:00",
"description": "description",
"first_storage_file": "1598548420.jpg",
"longitude": "124124",
"latitude": "12312.123123",
"storage_file": 1,
"storage": [
{
"id_storage": 1,
"id_event": 1,
"storage_file_title": "profile.jpg",
"created_at": null,
"updated_at": null
}
]
"users_member": [
{
"id_user": 1,
"email": 1,
"profile_image": "profile.jpg",
"fullname": null,
"age": null
"gender": null
}
{
"id_user": 1,
"email": 1,
"profile_image": "profile.jpg",
"fullname": null,
"age": null
"gender": null
}
{
"id_user": 1,
"email": 1,
"profile_image": "profile.jpg",
"fullname": null,
"age": null
"gender": null
}
]
"user_created_event": [
{
"id_user": 1,
"email": 1,
"profile_image": "profile.jpg",
"fullname": null,
"age": null
"gender": null
}
]
},
{
"id_event": 2,
"id_user": 1,
"name_event": "new event",
"place_event": "Chocen, wladyslawa lokietka 424",
"time_event": "19:00",
"description": "description",
"first_storage_file": "1598551003.jpg",
"longitude": "124124",
"latitude": "12312.123123",
"storage_file": 0,
"storage": []
}
]
}
我在 laravel 中创建了关系。
用户模型:
public function event(){
return $this->belongsToMany(Event::class,'member_events', 'id_user', 'id_event');
//return $this->belongsToMany(Event::class,'member_events', 'id_event', 'id_event', 'id_event')->withTimestamps();
}
事件模型
public function storage(){
return $this->hasMany(StorageEvent::class, 'id_event');
}
public function user(){
//return $this->belongsToMany(User::class,member_events, 'id_user', 'id_user')->withTimestamps();
return $this->belongsToMany(User::class,'member_events', 'id_event', 'id_user');
}
【问题讨论】: