ftp
3 سال پیش توسط ftp مطرح شد
5 پاسخ

من یک رابطه n به n دارم

@mohaligateway
@muhammad
@Rp76
@juza66
@ali.bayat
من یک رابطه n به n دارم
سه جدول محصول و سرویس و جدول واسط دارم
الان چطوری میتونم وقتی که محصولی رو ادیت میکنم بفهمم که سرویسش چیه؟ چون در رابطه n to n هر محصول داری چند سرویس و برعکس هست و در جدول واسط من دو کلید service_id , mahsol_id دارم؟
از کجا بفهمم که محصولی که ادیت میکنم سرویسش کدومه؟


ثبت پرسش جدید
رضا پارسیان
تخصص : توسعه دهنده Php , Laravel
@Rp76 3 سال پیش مطرح شد
0

سلام وقتتون بخیر!

مگر نباید همه سرویس هاش رو لیست کنید؟

من که کد هارو ندید ولی اگر فرض کنیم رابطه ها به این صورت باشند

public function mahsols(){
    return $this->belongstomany(Service::class,"pivot_table");
}

public function services(){
    return $this->belongstomany(Mahsol::class,"pivot_table");
}

به این صورت میتونی محصولات یک سرویس یا سرویس های یک محصول رو در بیاری

$mahsol=Mahsol::with("services")->first();
$service=Service::with("mahsols")->fisrt();

ftp
تخصص : ساده
@ftp 3 سال پیش آپدیت شد
0

@Rp76
خوب اگه چند تا بود از کجا میفهمیم که این سرویس برای این محصول هست

این مدل محصول هست

public function services()
{
    return $this->belongsToMany(Service::class,'products_providers','product_id','provider_id');
}

رضا پارسیان
تخصص : توسعه دهنده Php , Laravel
@Rp76 3 سال پیش مطرح شد
0

چند تا برمیگرده چون n به n هست رابطه و همه سرویس ها یا محصولات برای یک محصول یا سرویس هست


ftp
تخصص : ساده
@ftp 3 سال پیش مطرح شد
0

@Rp76
یعنی در جدول واسط همه سرویسها برای یک محصول یا همه محصولات برای یک سرویس هست درسته


رضا پارسیان
تخصص : توسعه دهنده Php , Laravel
@Rp76 3 سال پیش مطرح شد
0

اره
با این رابطه شما همه سرویس هایی رو میاری که به اون محصول خاص ربط داره
یا برعکس


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

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