سلام
دوستان در حال کدنویسی برای یک سایت موزیک هستم که دارای قسمت های آلبوم و تک آهنگ فرض کنید لینک یک تک آهنگ به این صورت site.com/track/1 که دارای یک عنوان و عکس و موزیک مربوطه هست
حالا اومدم برای قسمت آلبوم ها مثلا site.com/albums/1 هم به این صورت عنوان و عکس ایجاد کردم ولی برای لیست آهنگ ها های اون آلبوم از رابطه ها استفاده کردم ولی مشکلی که دارم اینه که برای قسمت عکس تک تک اهنگ های آلبوم نمیدونم به چه صورت عمل کنم که هربار یک عکس آلبوم رو چندین بار روی هرکدوم از آهنگ های جدیدی که درست میکنم تکراری آپلود نکنم و فقط میخواهم از عکس مربوط به آلبوم روی هرکدام از آهنگ ها استفاده کنم ؟ راهی هست ؟ اگر راه حل دیگه ای برای ایجاد آلبوم ها هست ممنون میشم راهنمایی کنید
سلام
باید طراحی دیتابیس تون رو درست انجام بدید.
قطعا هر آهنگ به یک آلبوم وصل است و هر آلبوم به یک تصویر.
شما با ریلیشنی که ایجاد کردید می تونید به آدرس تصویر آلبوم برسید و اون تصویر رو برای تمام آهنگ های یک آلبوم نمایش بدید و یا حالت بهتری رو درنظر بگیرید که درصورتی که اون آهنگ تصویر نداشت تصویر آلبوم را نمایش دهد و درصورتی که آلبوم هم تصویر نداشت یک تصویر دیفالت را نمایش دهد.
خب اگر بخواهم یک تک آهنگ ایجاد کنم که عکس داشته باشه ابتدا باید یک آلبوم با عکس ایجاد کنم بعد اونو وصل کنم به آلبوم ؟ اینجوری که کار سخت تر میشه
اول روابط بین مدل ها رو درست تعریف کن
هر آلبوم چندین آهنگ داره
و هر آهنگ متعلق به یک آلبومه
و
هر آلبوم یک یا چند عکس داره
و هر عکس متعلق به یک آلبومه
پس رابطه اول، یه رابطه یک به چنده.
و رابطه دوم میتونه یک به یک و یا یک به چند باشه (بسته به اینکه برای هر آلبوم چند تا عکس میخواهی داشته باشی)
به این ترتیب موقع دریافت اطلاعات یک آهنگ، شما به رابطه آهنگ با آلبوم و به رابطه اون آلبوم با عکس دسترسی داری.
چیزی میشه کم و بیش شبیه زیر:
$song = Song::first();
$album = $song->album;
$album_picture = $album->photo;
album و photo در کد بالا، نام رابطه های بین مدل ها هستند.
خب این چیزی که شما فرمودید
هر آلبوم چندین آهنگ داره
و هر آهنگ متعلق به یک آلبومه
برای تعریف هر آهنگ حتما باید متعلق به یک آلبوم باشه اگر بخواهم یک تک آهنگ باشه و مربوط به آلبومی نباشه چکار کنم ؟
در این حالت میتونی یه رابطه مستقیم بین آهنگ و عکس به وجود بیاری
یا میتونی یه مدل جدید مثلا SingleSong بسازی و تک آهنگ ها رو از آهنگ های آلبومی جدا کنی
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟