Soh3illl
5 سال پیش توسط Soh3illl مطرح شد
2 پاسخ

عدم دریافت اطلاعات در eloquent relationship

سلام به همگی دوستان
بنده توی پیاده سازی relationship ها توی لاراول به یه مشکلی بر خوردم.

return $user->roles;

خروجی کد بالا null هستش. در واقع وقتی می خوام با مدل User اطلاعات رو بر گردونم چیزی نمایش داده نمیشه.

return $role->users;

ولی وقتی همین کار رو با مدل Role انجام میدم خروجی زیر رو بر می گردونه

[
    {
        "id": 1,
        "name": "علی عباسی",
        "level": "admin",
        "email": "ali@gmail.com",
        "email_verified_at": null,
        "created_at": "2020-04-26 17:53:08",
        "updated_at": "2020-04-26 17:53:08",
        "pivot": {
            "role_id": 4,
        "user_id": 1
        }
    }
]

کد زیر مربوط به مدل Role هستش.

public function users(){
    return $this->belongsToMany(User::class);
}

و این کد هم مربوط به مدل User هستش.

public function roles()
    {
    return $this->belongsToMany(Role::class);
}

ممنون میشم که راهنمایی کنید.


ثبت پرسش جدید
سید حسین رضوی
تخصص : برنامه نویس وب و طراح رابط کار...
@hossein.r.1442 5 سال پیش مطرح شد
0

شما اسم ستون رو هم به تابع پاس بدید ببینین مشکلتون حل میشه

public function roles()
    {
    return $this->belongsToMany(Role::class, 'xxxxx', 'yyyyy');
}

Soh3illl
تخصص : برنامه نویس php
@soh3illl 5 سال پیش مطرح شد
0

سلام دوست عزیز
مشکل حل شد.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام