محمدسجاد دباغ
4 سال پیش توسط محمدسجاد دباغ مطرح شد
8 پاسخ

دیتابیس پیشنهادی برای منو و برگه ها

سلام
برای پیاده سازی جدول دیتابیس های زیر لطفا پیشنهاد بدید.

جدول منو : id ، title , parent_id , link

دیگه چه مواردی نیاز هست؟
یک نکته هم هست، جدول میتونه به جای لینک، ایدی page داشته باشه.

جدول برگه ها: id , title ,poster_id , context , time

دیگه چه مواردی نیاز هست؟


ثبت پرسش جدید
Muhammad
تخصص : Back-End Developer
@muhammad 4 سال پیش مطرح شد
2

سلام.

id, parent_id, title, url, order

اگه خواستین به پیج وصلش کنین، لینک اون پیج رو به دست میارین و بعد به شکل آدرس نسبی ذخیره می‌کنین.

جدول برگه‌ها:

id, title, image_url, content, created_at

اگه هر برگه چندین تصویر داره، باید رابطه یک به چند داشته باشین و جدولی برای تصاویر هر برگه بسازین. بقیه هم بستگی به نیازتون داره و نمیشه یه نسخه برای هر پروژه پیچید. نیاز ماست که این چیزهارو مشخص می‌کنه.


محمدسجاد دباغ
تخصص : برنامه نویس لاراول
@mdabbagh 4 سال پیش مطرح شد
0

@muhammad
متشکرم 😘 دوتا سوال دیگه هم دارم

1- ما توی منو بجز برگه و لینک مستقیم ، یک سری صفحه آرشیو یا ... داریم که از قبل پیاده سازی شده ، این مورد رو چطور باید به در جدول منو اضافه کرد؟ (ادمین «مشتری» لینک دقیق اون هارو نمیدونه)

2- قسمت order تا حالا پیاده نکردم ، باید عدد باشه؟ بعد چطور باید دو عدد جابه جا بشوند؟


Muhammad
تخصص : Back-End Developer
@muhammad 4 سال پیش مطرح شد
3

1) اگه این لینک‌ها تغییر نمی‌کنن، خودتون در حین ایجاد منو لینک رو تولید می‌کنین ولی اگه ممکنه تغییر کنه می‌تونین یه ستون برای تایپ و یه ستون برای آیدی بذارین. مثل چیزی که توی روابط پولیمورفیک داریم.
2) برای ترتیب منو یه عدد دارین که روش کوئری بزنین و در حین جابجایی میشه ترتیب منوهارو ذخیره کرد. توی ویو می‌تونین یه سلکت باکس داشته باشین که اعداد توش باشن و کاربر ترتیب هر کدوم رو انتخاب کنه.


محمدسجاد دباغ
تخصص : برنامه نویس لاراول
@mdabbagh 4 سال پیش مطرح شد
0

@muhammad
سلام وقت بخیر
من جدول رو ساختم و آیتم هایی که زیردسته اصلی هستند parent صفر دارند و مابقی parent id که زیرمجموعه اون هستند.
اما چطور باید نمایش بدم؟

<ul class="navbar-nav">
@foreach ($allmenu as $item)
    @if ( $item->parent_id == 0)
    <li class="nav-item">
        <a class="nav-link" href="{{ $item->url }}">{{ $item->title }}</a>
    </li>
    @else
    <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="{{ $item->url }}" id="navbarDropdownMenuLink" role="button" data-bs-toggle="dropdown" aria-expanded="false">
        {{ $item->title }}
        </a>
        <ul class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
        @foreach ($allmenu as $itemto)
            @if ($itemto->parent_id ==  $item->parent_id )
            <li><a class="dropdown-item" href="{{ $item->url }}">{{ $item->title }}</a></li>
            @endif
        @endforeach
        </ul>
    </li>
    @endif
@endforeach
</ul>

در این مثال نمیشه زیرمجموعه هارو تشخیص داد


Muhammad
تخصص : Back-End Developer
@muhammad 4 سال پیش مطرح شد
2

اولا parent_id می‌تونه nullable باشه و نیازی به صفر نیست.
برای پیاده‌کردنش هم کافیه دوتا foreach تو در تو داشته باشید. روی مدل منو هم یه رابطه دارید که داخل foreach دومی اون رو می‌گیرین.


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 4 سال پیش مطرح شد
0

@muhammad
توضیحاتت درست و عالی بود ، ایول داری


احسان رضوی
تخصص : توسعه دهنده‌ی وب
@ehsan.in 4 سال پیش مطرح شد
1

@msdabbagh

توی این آدرس هم دیاگرام‌ها و اسکیماهای مختلفی دیتابیس و روابط ما بینشون آورده شده که مشاهدش شاید خالی از لطف نباشه و بتونه کمکتون کنه:
اسکیماهای دیتابیس


Muhammad
تخصص : Back-End Developer
@muhammad 4 سال پیش مطرح شد
0

@juza66
قربانت لطف داری
خودمم تازه دارم دیتابیس یاد می‌گیرم 😂


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

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