namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
protected $table = 'users';
// Define pictures with a pivot table link
public function pictures() {
return $this->belongsToMany('App\Models\UserPicture', 'user_pictures', 'picture_id', 'user_id');
}
//add methods
}
class UserPicture extends Model
{
protected $table = 'user_pictures';
public function picture() {
return $this->hasOne('App\Models\Picture', 'id', 'picture_id');
}
public function user() {
return $this->hasOne('App\Models\User', 'id', 'user_id');
}
//add methods
}
class Pictures extends Model
{
protected $table = 'pictures';
//add methods
}
如果你不想時間戳添加到表,你必須添加這2種方法:
public function setCreatedAt($value) {
// to disable created_at
}
public function setUpdatedAt($value) {
// to disable created_at
}
從用戶獲取圖片做到這一點:
$userPictures = UserPicture::where(array('user_id'=>1)->get();
foreach($userPictures as $userpicture) {
$picture = $userpicture->picture();
}
如何我循環相關聯的所有圖片讓所有相關的用戶ID圖片? –
'$ user = User ::其中('id',1) - > get();' '$ user將包含其詳細信息,如 - ' '$ user - > ['id'] = 1' '$ user - > ['name'] =「您的姓名」' '$ user - > ['pictures'] = _array_of_user_pictures_' 因此循環遍歷'$ user - > ['pictures']' – iamkdev
我添加了圖像檢索到我的答案 –