如何覆盖地址字段中忘记密码的电子邮件?
我正在使用SendsPasswordResetEmails trait
。
它似乎正在使用.env mail-from configuration
这是特征供应商代码SendsPasswordResetEmail Trait
sendResetLinkEmail method
似乎是神奇的地方,但我无法确定如何覆盖从代理发送的邮件,此功能在哪里? sendResetLink
答案 0 :(得分:0)
您可以只复制特征的代码,然后将其粘贴在PasswordBroker
类中以覆盖它,如果您要的是该特征。
答案 1 :(得分:0)
我认为您不必编辑broker()
,只需覆盖sendResetLinkEmail()
中的ForgetPasswordController
。然后覆盖$request->mail
条目。
无论如何,您要查找的功能位于“ \ vendor \ laravel \ framework \ src \ Illuminate \ Auth \ Passwords \ PasswordBroker.php” => sendResetLink()
答案 2 :(得分:0)
我认为您要设置的是
MAIL_FROM_ADDRESS=sender@example.com
MAIL_FROM_NAME=Sender
在.env文件中,它应该可以正常工作,您不需要覆盖sendResetLinkEmail method
。
答案 3 :(得分:0)
我可以想到两种方法来实现您想要的。
1)在AppServiceProvider中:
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
config()->set('mail.from.address', 'YOUR FROM ADDRESS HERE');
}
2)在Controller.php中:
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
public function __construct()
{
config()->set('mail.from.address', 'YOUR FROM ADDRESS HERE');
}
}
希望有帮助!