Morteza Khodarahmi
3 سال پیش توسط Morteza Khodarahmi مطرح شد
4 پاسخ

روابط در لاراول

سلام دوستان
من یه فروشگاه دارم که دارم از یه پکیج پرداخت استفاده میکنم
حالا میخوام مواردی که خریداری شده رو نمایش بدم اما به این مشکل بر میخورم
model:

class PurchasedCourse extends Model
{
    use HasFactory;

    protected $fillable = [
        'user_id',
        'course_id',
    ];

    public function course()
    {

        return $this->belongsTo(Course::class,'course_id');
    }
}

migration

 public function up()
    {
        Schema::create('courses', function (Blueprint $table) {
            $table->id('id');
            $table->string('name')->unique();
            $table->string('start');
            $table->string('end');
            $table->integer('price');
            $table->string('jalasat');
            $table->string('zarfiat');
            $table->text('tozih');
            $table->integer('hit');
            $table->string('departmant');
            $table->string('thumbnail');
            $table->tinyInteger('status')->default(0);
            $table->string('slug')->unique();
            $table->timestamps();
        });

    }

controller

 public function mycourse(){

        $courses= PurchasedCourse::where('user_id',Auth::id())
        ->with('course')
        ->get();

      dd($courses);
            return view('student.courses.mycourse',[
                'courses'=>$courses
            ]);

    }

result
توضیح تصویر رو وارد کنید

course رو نال برمیگردونه و فقط تعداد دوره های خریداری شد رو برمیگردونه!
ممنون میشم راهنماییم کنید

@hesammousavi


ثبت پرسش جدید
رضا جهانگیر
تخصص : Full-Stack Developer
@rezajahangir 3 سال پیش آپدیت شد
-1

سلام.
به جای

$courses= PurchasedCourse::where('user_id',Auth::id())
        ->with('course')
        ->get();

کد زیر رو بنویسید.

$courses = auth()->user()->course()->latest()->paginate(10);

موفق باشید.


Morteza Khodarahmi
تخصص : Backend Developer
@mrkhodarahmii 3 سال پیش مطرح شد
0

@rezajahangir
این که خطا داد ولی یکم غیر منطقی نیست!!!
من داخل مدل یوزر course رو ندارم!!
بعد من میخوام درس هایی که داخل تیبل purchasedCourse ثبت شده رو نشون بدم


رضا جهانگیر
تخصص : Full-Stack Developer
@rezajahangir 3 سال پیش مطرح شد
-1

مگه نمیخواین به کاربر، دوره هایی که خریده رو نمایش بدین؟


رضا جهانگیر
تخصص : Full-Stack Developer
@rezajahangir 3 سال پیش مطرح شد
0

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

$courses = PurchasedCourse::select('user_id')->where('course_id', auth()->user()->id)->paginate(10);

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

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