سلام
جدیدترین نسخه eloquent-sluggable رو نصب کردم
موقع ذخیره کردن اطلاعات slug رو به صرت فینگلش ذخیره میکند
حتی method فارسی رو داخل تنظیمات قرار داده ام
'method' => function($string, $separator = '-') {
$_transliteration = ["/ö|œ/" => "e",
"/ü/" => "e",
"/Ä/" => "e",
"/Ü/" => "e",
"/Ö/" => "e",
"/À|Á|Â|Ã|Å|Ǻ|Ā|Ă|Ą|Ǎ/" => "",
"/à|á|â|ã|å|ǻ|ā|ă|ą|ǎ|ª/" => "",
"/Ç|Ć|Ĉ|Ċ|Č/" => "",
"/ç|ć|ĉ|ċ|č/" => "",
"/Ð|Ď|Đ/" => "",
"/ð|ď|đ/" => "",
"/È|É|Ê|Ë|Ē|Ĕ|Ė|Ę|Ě/" => "",
"/è|é|ê|ë|ē|ĕ|ė|ę|ě/" => "",
"/Ĝ|Ğ|Ġ|Ģ/" => "",
"/ĝ|ğ|ġ|ģ/" => "",
"/Ĥ|Ħ/" => "",
"/ĥ|ħ/" => "",
"/Ì|Í|Î|Ï|Ĩ|Ī| Ĭ|Ǐ|Į|İ/" => "",
"/ì|í|î|ï|ĩ|ī|ĭ|ǐ|į|ı/" => "",
"/Ĵ/" => "",
"/ĵ/" => "",
"/Ķ/" => "",
"/ķ/" => "",
"/Ĺ|Ļ|Ľ|Ŀ|Ł/" => "",
"/ĺ|ļ|ľ|ŀ|ł/" => "",
"/Ñ|Ń|Ņ|Ň/" => "",
"/ñ|ń|ņ|ň|ʼn/" => "",
"/Ò|Ó|Ô|Õ|Ō|Ŏ|Ǒ|Ő|Ơ|Ø|Ǿ/" => "",
"/ò|ó|ô|õ|ō|ŏ|ǒ|ő|ơ|ø|ǿ|º/" => "",
"/Ŕ|Ŗ|Ř/" => "",
"/ŕ|ŗ|ř/" => "",
"/Ś|Ŝ|Ş|Ș|Š/" => "",
"/ś|ŝ|ş|ș|š|ſ/" => "",
"/Ţ|Ț|Ť|Ŧ/" => "",
"/ţ|ț|ť|ŧ/" => "",
"/Ù|Ú|Û|Ũ|Ū|Ŭ|Ů|Ű|Ų|Ư|Ǔ|Ǖ|Ǘ|Ǚ|Ǜ/" => "",
"/ù|ú|û|ũ|ū|ŭ|ů|ű|ų|ư|ǔ|ǖ|ǘ|ǚ|ǜ/" => "",
"/Ý|Ÿ|Ŷ/" => "",
"/ý|ÿ|ŷ/" => "",
"/Ŵ/" => "",
"/ŵ/" => "",
"/Ź|Ż|Ž/" => "",
"/ź|ż|ž/" => "",
"/Æ|Ǽ/" => "E",
"/ß/" => "s",
"/IJ/" => "J",
"/ij/" => "j",
"/Œ/" => "E",
"/ƒ/" => ""];
$quotedReplacement = preg_quote($separator, '/');
$merge = [
'/[^\s\p{Zs}\p{Ll}\p{Lm}\p{Lo}\p{Lt}\p{Lu}\p{Nd}]/mu' => ' ',
'/[\s\p{Zs}]+/mu' => $separator,
sprintf('/^[%s]+|[%s]+$/', $quotedReplacement, $quotedReplacement) => '',
];
$map = $_transliteration + $merge;
unset($_transliteration);
return preg_replace(array_keys($map), array_values($map), $string);
},
قسمت Model
<?php
namespace App;
use Cviebrock\EloquentSluggable\Sluggable;
use Illuminate\Database\Eloquent\Model;
class Privacy extends Model
{
use Sluggable;
protected $fillable = [
'status', 'slug', 'question', 'answer'
];
/**
* Return the sluggable configuration array for this model.
*
* @return array
*/
/**
* Return the sluggable configuration array for this model.
*
* @return array
*/
public function sluggable()
{
return [
'slug' => [
'source' => 'question'
]
];
}
}
مشکل از کجا هست؟؟؟؟؟؟؟
سلام سوالتون رو مطرح کردید نیاز نیست برای گرفتن پاسخ هی پاسخ ثبت کنید اینجا. بببینیم جواب میدیم، ممنون اگر رعایت بفرمایید.
در کد بالا گفتید slug رو از question بگیره ! این فیلد question عنوان هست دیگه ؟
خود کد بنظر درست میاد ! یکبار با dd در نقاط مختلف لاگ بگیرید
تنظیمات رو درست وارد کردید آیا ؟ در فایل درست در جای درست ؟
سلام
@iran051clash
این مورد رو تست کنید
'method' => function ($string, $separator) {
$slug = mb_strtolower(
preg_replace('/([?]|\p{P}|\s)+/u', $separator, $string)
);
return trim($slug, $separator);
},
ببخشید حسام جان چون خیلی وقت بود سوال رو مطرح کردم ولی کسی پاسخ نداد
آره question به جای title هست
تنظیمات هم طبق دستورات درست وارد کردم و چک کردم
تو نسخه های پایین تر لاراول قبلا استفاده میکردم
به قول شما dd بگیریم ببینم چجوریه
روش آقای قربانی رو هم تست کنم
باتشکر از دوستان
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟