亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Laravel,如何將密碼重置為用戶表中重復的電子郵件

Laravel,如何將密碼重置為用戶表中重復的電子郵件

PHP
呼喚遠方 2022-07-29 16:53:53
我有用戶表,其中包含有關用戶及其角色的信息,所以這里唯一的是 'email'、'role_id'、'phone' 組合在一起,所以電子郵件可以重復但如果 role_id 和電話號碼重復則不能重復,這是因為用戶可以是客戶,即role_id=1,或者他的帳戶是企業帳戶,即role_id=2,但是如果該客戶需要重置其客戶密碼或企業帳戶密碼怎么辦?我怎樣才能做到這一點?桌子    Schema::create('users', function (Blueprint $table) {        $table->engine = 'InnoDB';        $table->increments('id');        $table->string('fname');        $table->string('lname');        $table->boolean('role_id')->default(1);        $table->string('phone');        $table->string('email');        $table->unique(['email', 'role_id','phone']);        $table->string('password');        $table->boolean('status')->default(1);        $table->rememberToken();        $table->timestamp('email_verified_at')->nullable();        $table->timestamps();    });
查看完整描述

1 回答

?
四季花海

TA貢獻1811條經驗 獲得超5個贊

  1. 好的解決方案是添加一個新的關系表,例如 user_role (user_role.user_id, user_role.role_id) 并使用一個唯一字段(電子郵件或電話)創建索引。

但是您需要在登錄表單或其他地方添加角色的下拉列表?;蚋摹霸L問權限”。例如,如果用戶具有客戶角色和業務角色,您可以讓他訪問這兩個角色的所有功能。

  1. 另一種解決方案是在密碼重置表單中添加角色下拉列表...

  2. 另一種解決方案是為所有用戶行重置密碼。這樣,用戶可以通過電子郵件更改角色進行登錄


查看完整回答
反對 回復 2022-07-29
  • 1 回答
  • 0 關注
  • 105 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號