راکت

نمایش مطالب هم با id و هم با slug

7 پاسخ

سلام
وقتی از متد زیر در مدل article استفاده می کنم نمایش تک پست با اسلاگ کار میکنه ولی دیگه با ای دی نمیشه پست رو نمایش داد. چطوری میشه هم با اسلاگ بتونیم پست رو نمایش بدیم و هم لینک کوتاه با آی دی داشته باشیم؟

 public function getRouteKeyName()
    {
        return 'slug';
    }
ثبت پرسش جدید

پاسخ‌ها

7
sajjad
sajjad
@sajjad652

تخصص: برنامه نویس back end

سوالت خیلی واضع نیست اگر منظورت داده های یک id هست از getRouteKeyName استفاده نکن بیا دو route تعریف کن یکی با ایدی بر گردون یکی رو با slug که باید از route model binding استفاده کنی

developer
developer
@developer

تخصص: برنامه نویس

سرچ کن!
اگر آیدی رو گرفتی بین مقالات سرچ کن مقاله ای که با فلان آیدی هست
اگر اسلاگ رو گرفتی بین مقالات سرچ کن مقاله ای که با فلان اسلاگ هست رو واست بیاره

شاید پاسخ شما همین‌جا باشد

مهدی سمیعیان
مهدی سمیعیان
@mahdidev

تخصص: برنامه نویس وب/اندروید

ببینید اینکه دوتا روت تعریف بشه و به محض اتصال به اون روت ها یکی با اسلاگ کار کنه و یکی دیگه با ای دی رو متوجهم.
من اومدم از متد getRouteKeyName داخل مدل استفاده کردم که وقتی با اسلاگ جستجو میشه مقاله رو برگردونه. ولی بعد از اینکه این متد اضافه شد حتی با تعریف یک روت مجزای دیگه هم نمی تونم با ای دی مقالات رو دریافت کنم.

developer
developer
@developer

تخصص: برنامه نویس

دوست عزیز کلا بی خیال getRouteKeyName و route model binding بشید
توی کنترلر آیدی یا اسلاگ هر کدوم رو که میخواین ساده بگیرید بعد با whereسرچ کنید توی articleها

مهدی سمیعیان
مهدی سمیعیان
@mahdidev

تخصص: برنامه نویس وب/اندروید

پاک کردن صورت مساله رو بلد بودم. میخواستم بدونم نکته اش چیه و چه راه حلی واسه اون مساله وجود داره @alirezasafdari

سید حامد
سید حامد
@hmchenaran.s

سلام این که کاری نداره

کافیه از تابع resolveRouteBinding توی مدل تون استفاده کنید. بعد اون جا از where برای id و orWhere برای slug استفاده کنید.

این تابع رو توی لاراول جستجو کنید توضیحات کامل ترش میاد.

احمد
احمد
@ahmad316948

سلام. در لاراول 7 یه قابلیتی به route model binding اضافه شده که می تونید از slug در کنار id استفاده کنید.
بهتره برای درک بیشتر به دوره آشنایی با امکانات جدبد لاراول 7 => جلسه 7 مراجعه کنید

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

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