اعتبار سنجی در زمان آپدیت کردن یک رکورد
با سلام و احترام خدمت دوستان و اساتید محترم .
من برای اضافه کردن کاربر درون سایت یک سری اعتبارسنجی ها انجام دادم که به شکل زیر هست :
public static $rules = array(
'fname' => 'min:3',
'lname' =>'min:3',
'sex' =>'max:1',
'email' =>'required|email|unique:users',
'username' =>'unique:users',
'password' =>'required|alpha_num|between:6,12|confirmed',
'password_confirmation' =>'required|alpha_num|between:6,12',
'image' => 'mimes:jpeg,bmp,png,jpg,gif|max:300',
'tellphone' =>'between:10,12',
'mobile' =>'required|between:10,12',
'address' =>'min:10',
'postal_code' =>'alpha_num|min:10',
'country' =>'min:3',
'state' =>'min:3',
'city' =>'min:3',
'role' =>'min:3',
'active' =>'boolean',
);
برای ثبت نام اولیه ، کاربر فقط باید فیلدهای ( email , password , password_confirmation , mobile) رو پر کنه و این فیلدها الزامی هست اما بقیه فیلدها در زمان ثبت نام الزامی نیست .
دو فیلد ( email , username ) همونطور که معلومه ، اختصاصی برای یک کربر هست و خوده لاراول چک میکنه این مورد رو .
حالا مشکل اینجاست که اگر کاربر یکبار اطلاعات این دو فیلد رو پر کرده باشه و ثبت شده باشه ، برای دفعات بعدی به مشکل بر میخوره و وقتی بخواد مجدد اطلاعاتش رو بروز کنه ، لاراول این اخطار رو میده که ( این نام کاربری تکراری است ، لطفا نام دیگری را انتخاب کنید ! )!
راهه حلی برای این مشکلم پیشنهاد میدید ؟
البته یکی از راه ها اینه که دستی چک کنم و موقع آپدیت شدن این دو مورد ، از اعتبارسنجی لاراول استفاده نکنم که منطقی نیست !
نقل قول: اعتبار سنجی در زمان آپدیت کردن یک رکورد
بسکه تالار لاراول فعاله ، ادم می مونه کدوم راهه حله پیشنهادی رو انجام بده :D
به جوابم رسیدم ، جواب رو میذارم ، اگر کسی به همین مشکل برخورد بتونه رفعش کنه ( البته چندین راهه حل پیدا کردم که به نظر خودم بهترینش همین که می نویسم ) :
if($user->username == $username) { User::$rules['username'] = 'required'; }
نقل قول: اعتبار سنجی در زمان آپدیت کردن یک رکورد
سلام دوست عزیز
بله درسته این فروم بیشتر جنبه تبلیغاتی پیدا کرده تا آموزشی بدتر از همه متاسفانه مدیران بخش php افرادی هستند که روی یک سری فریم ورک خاص تخصص کمی دارن
از طرفی اینجا ایرانه اگه کسی codeigniter کار کنه فکر می کنه شاه کار کرده چه برسه لاراول که منبع فارسی زیادی نداره
پیشنهاد می کنم سوالات را اینجا بپرسی
http://stackoverflow.com/questions/tagged/laravel