• 1401/06/12

فارسی نشدن اسلاگ / slug :

سلام استاد 

همه چی خوب بود و همه چیز رو طبق توضیحات شما انجام دادم 

 

درست بعد از جلسه ایی که از php artisan optimize استفاده کردید محصولاتی که وارد میکنم اسلاگ هاشون فینگلیش میشه یعنی فارسیه ولی با حروف انگلیسی

 

چند باری تلاش کردم درستش کنم ولی فایده نداره 

 

درست کار میکردا ی هو دوباره قاطی کرد

  • 1401/06/12
  • ساعت 18:25

سلام مجدد ، بعد از یکم گشت و گزار به این نتیجه رسیدم که جواب هم میده ،‌ بهترین راه برای اینکه شما ی اسلاگ بسازید بی دردسر اینه که اون کلوژری که استاد توی فایل config/sluggable.php ساختن رو کپی کنید و کامنتش کنید

 

بعد از اون توی هلپر هاتون ی تابع بنویسید به نام persianSlug و کد هایی که کپی کردید رو درون اون قرار بدید ،‌

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

 

اون چیزی که ساختید رو مثلا پست رو درون ی متغیر بریزید مثلا اینطوری

$post = Post::create($inputs);

حالا وقتشه که از آیدی این پستی که ساختید استفاده کنید و با استفاده از هلپری که بالا تعریف کردیم اسلاگمون رو بسازیم 

نه نیاز به ایمپورت توی مدل داره نه موقع 

php arisan optimize

باگ میده خیلی ساده این کد رو بعد از ذخیره کردن پست یا هرچیزی که نیاز به اسلاگ داره مینویسیم

$post = Post::create($inputs);

$slug = persianSlug($post->title) . '-' . $post->id;
$post->update(['slug' => $slug]);

خیلی ساده و بدون هیچ دردسری اسلاگ شما ساخته میشه ، اگر براتون جای سواله چرا آیدی رو هم به اسلاگ اضافه کردم جوابش اینه که اسلاگ باید منحصر به فرد باشه و از اونجایی که آیدی خودش ذاتا منحصر به فرده اصلا امکان نداره ارور unique بودن بگیرید و کارتون راه میفته 


  • 1401/06/14
  • ساعت 16:41

با سلام خدمت شما همراه عزیز

 

دوستمون کاملا درست فرمودن

 

موفق و سربلند باشید


  • 1401/06/14
  • ساعت 18:45

سلام استاد ،‌ ممنونم


  • 1401/06/20
  • ساعت 14:40

زنده باشید


logo-enamadlogo-samandehi