پوریا مستعان
4 سال پیش توسط پوریا مستعان مطرح شد
21 پاسخ

تغییر فیلد ایمیل به نام کاربری در لاراول

سلام خدمت همه دوستان.
به خاطر پروژه ای که داریم مجبورم تا به جای ثبت ایمیل، فقط نام کاربری کاربر رو ثبت کنم.
برای این کار خب توی RegisterController تو جاهایی که ایمیل میگرفت رو درست کردم و تغییرش دادم به نام کاربری و ثبت نام هم بدون هیچ مشکلی انجام میشه، اما بعد از ثبت نام وقتی که میخوام لاگین کنم، این ارور رو توی blade لاراول به نشون میده که اطلاعات وارد شده با اطلاعات ما سازگار نیست، بعد از اینکه یکم سرچ کردم فهمیدم که باید متد username از تریت AuthenticatesUsers در LoginController رو به شکل زیر بازنویسی کنم و username رو توش قرار بدم :

public function username()
    {
        return 'username';
    }

و input مربوط به ایمیل هم نامش رو به username تغییر دادم، اما هرکار میکنم نمیتونم لاگین کنم و هی میگه اطلاعات وارد شده سازگار نیست در صورتی که چندین و چندبار تکرار کردم و مقادیر رو سنجیدم و از اول کاربر ساختم اما نشد.
ممنون میشم اگر کسی میدونه مشکل کجاست راهنمایی کنه

به روز رسانی

class LoginController extends Controller
{

    use AuthenticatesUsers, TwoFactorAuth;

    /**
     * Where to redirect users after login.
     *
     * @var string
     */
    protected $redirectTo = '/';

    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest')->except('logout');
    }

    /**
     * Get the login username to be used by the controller.
     *
     * @return string
     */
    public function username()
    {
        return 'username';
    }

    protected function authenticated(Request $request, $user)
    {
        return $this->loggedin($request, $user);
    }

    public function logout(Request $request)
    {
        Auth::logout();
        return redirect('/');
    }
}

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

سلام
چند وقت پیش این مشکل هم برای من پیش امد
این مشکل برای من به خاطر اینبود که پسورد من دو بار hash میشد و موقعی که از attempt استفاده میکردم تنها یکی از اون مرحله هش شده با پسورد وارد شده مقایسه میشد و با هم سازگار نبودن .
دو بار hash شدن پسورد هم به خاطر این بود که من یه بار از مدل user و یه بار هم مودقع ایجاد user در کنترلر این کارو میکردم


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

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