• laravel 5.5 修改auth 重置密码邮件


    1.输入 php artisan make:notification RestPassword ,在 app otification 下创建 RestPassword.php

    然后修改 AppUser:

    namespace App;
    
    use IlluminateNotificationsNotifiable;
    use IlluminateFoundationAuthUser as Authenticatable;
    use AppNotificationsResetPassword as RestPasswordNotification; // 替换 
    
    class User extends Authenticatable
    {
        use Notifiable;
    
        /**
         * The attributes that are mass assignable.
         *
         * @var array
         */
        protected $fillable = [
            'name', 'email', 'password', 'college', 'class', 'phone'
        ];
    
        /**
         * The attributes that should be hidden for arrays.
         *
         * @var array
         */
        protected $hidden = [
            'password', 'remember_token',
        ];
    
        public function sendPasswordResetNotification($token)
        {
            $this->notify(new RestPasswordNotification($token));
        }
    }

     2.输入 php artisan vendor:publish --tag=laravel-notifications 

    将自动创建 email.blade.php 模版,我这里并不想修改 

    3.更改邮件内容,修改第一步创建的 app otificationRestPassword.php  

    namespace AppNotifications;
    
    use IlluminateBusQueueable;
    use IlluminateNotificationsNotification;
    use IlluminateContractsQueueShouldQueue;
    use IlluminateNotificationsMessagesMailMessage;
    
    class ResetPassword extends Notification
    {
        use Queueable;
    
        /**
         * The password reset token.
         *
         * @var string
         */
        public $token;
    
        /**
         * Create a new notification instance.
         *
         * @return void
         */
        public function __construct($token)
        {
            $this->token = $token;
        }
    
        /**
         * Get the notification's delivery channels.
         *
         * @param  mixed  $notifiable
         * @return array
         */
        public function via($notifiable)
        {
            return ['mail'];
        }
    
        /**
         * Get the mail representation of the notification.
         *
         * @param  mixed  $notifiable
         * @return IlluminateNotificationsMessagesMailMessage
         */
        public function toMail($notifiable)
        {
            return (new MailMessage)
                        ->subject('XXXX')
                        ->salutation('XXX')
                        ->line('您之所以收到这封邮件是因为我们收到了您重置密码的申请。')
                        ->action('Reset Password', url(config('app.url').route('password.reset', $this->token, false)))
                        ->line('如果您本人未进行密码重置,您可以不必采取进一步操作!');
        }
    
    }
    沿着 IlluminateNotificationsMessagesMailMessage 可以找到 IlluminateNotificationsMessagesSampleMessage 
    其中包含了 subject, salutation ...
  • 相关阅读:
    ASP.Net 反射显示
    ASP.Net 反射简单工厂模式
    ASP.Net MVC生成验证码
    ASP.Net EF架构
    ASP.Net 邮箱发送
    ASP.Net 反射简单
    ASP.Net 显示
    新年快乐
    测试开发比
    Linkbot介绍
  • 原文地址:https://www.cnblogs.com/navysky/p/7730041.html
Copyright © 2020-2023  润新知