【问题标题】:How do I translate the subject of my password reset email in laravel 5如何在 laravel 5 中翻译我的密码重置电子邮件的主题
【发布时间】:2015-12-18 18:06:24
【问题描述】:

我是 laravel 新手,目前正在构建一个多语言应用程序。我正在使用 laravel 提供的方法实现密码重置。在 ResetsPasswords trait 中查看此方法后:

 protected function getEmailSubject()
    {
        return isset($this->subject) ? $this->subject : 'Your Password Reset Link';
    }

我注意到我可以在 PasswordController 中为我的主题指定一个变量,如下所示:

protected $subject = '密码重置';

如何从语言文件中获取该值并分配给变量?

【问题讨论】:

    标签: laravel-5 forgot-password


    【解决方案1】:

    在构造函数中使用 trans() 辅助函数

    <?php
    
    namespace App\Http\Controllers\Auth;
    
    use App\Http\Controllers\Controller;
    use Illuminate\Foundation\Auth\ResetsPasswords;
    
    class PasswordController extends Controller
    {
        use ResetsPasswords;
    
        /**
         * Create a new password controller instance.
         *
         * @return void
         */
        public function __construct()
        {
            $this->subject = trans('passwords.subject');
            $this->middleware($this->guestMiddleware());
        }
    }
    

    【讨论】:

      【解决方案2】:

      经过一番挖掘,我找到了如下所示的答案。

      protected function getEmailSubject(){
          return Lang::has('passwords.password_reset')
               ? Lang::get('passwords.password_reset')
               : 'Your Password Reset Link.';
      }
      

      使用方法覆盖,我覆盖了 ResetsPasswords 特征中的 getEmailSubject 方法,并提供了必要的实现,如电子邮件正文所示。 passwords.password_reset 是我的语言文件中文本的键。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-03-27
        • 2016-08-07
        • 1970-01-01
        • 1970-01-01
        • 2016-03-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多