Laravel Свой текст письма сброса пароля в Laravel 5.4

Европа - быстрые серверы на дисках NVMe от $5 / Русский датацентр от 199руб

Тема в разделе "Laravel", создана пользователем MaksM, 2 мар 2017.

  1. MaksM

    MaksM Новичок

    Сообщения:
    30
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    Пользуюсь стандартной регистрацией Лары. Когда запрашиваешь ссылку на восстановление пароля письмо приходит на заморском языке. Как мне отправить свой текст со ссылкой для сброса пароля в письме не меняя текст в \vendor\laravel\framework\src\Illuminate\Auth\Notifications\ResetPassword.php?
    Понимаю, что нужно перекрыть метод toMail, но не пойму где )). Только не кидайте ссылки на документацию. Там я все прочел и запутался. Объясните пожалуйста на пальцах ))
     
  2. флоппик

    флоппик promotor fidei Команда форума Партнер клуба

    Сообщения:
    4.953
    Ваш город:
    Павлодар, Казахстан
    Address:
    Pavlodar, Kazakhstan
    Country:
    Location on Map:
    artisan make:auth опубликует шаблоны авторизации, в том числе и для писем.
     
  3. MaksM

    MaksM Новичок

    Сообщения:
    30
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    Не, он только формы публикует. Ничего другого нет. Может я не там смотрю? После этой команды появляется папка views/auth в которой 4 файла (все с формами)
    artisan vendor : publish тоже публикует общий шаблон писем в котором переменные указаны, а не сам текст.
     
  4. флоппик

    флоппик promotor fidei Команда форума Партнер клуба

    Сообщения:
    4.953
    Ваш город:
    Павлодар, Казахстан
    Address:
    Pavlodar, Kazakhstan
    Country:
    Location on Map:
    Сорри, это был 5.3, на котором проверил. Действительно, в 5.4 все вообще по другому устроено.
    Вкратце — у модели пользователя нужно перекрыть метод sendPasswordResetNotification($token), где реализовать отправку письма.
    https://laravel.com/docs/5.4/passwords#password-customization
     
  5. fixxxer

    fixxxer К.О. Партнер клуба

    Сообщения:
    12.954
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    Это совсем тяжелая артиллерия, не должно быть так сложно :)

    Вроде можно сделать vendor : publish с нужным тегом. Ну и русскую локаль включить и поставить.

    Хотя не уверен, с 5.4 особо не работал.
     
  6. флоппик

    флоппик promotor fidei Команда форума Партнер клуба

    Сообщения:
    4.953
    Ваш город:
    Павлодар, Казахстан
    Address:
    Pavlodar, Kazakhstan
    Country:
    Location on Map:
    @fixxxer, уже нет. Я прям исходники посмотрел. Там хардкод теперь в нужных местах :D
    [​IMG]
    [​IMG]
     
  7. fixxxer

    fixxxer К.О. Партнер клуба

    Сообщения:
    12.954
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    Ого!

    Фейспалм какой-то просто.
     
  8. MaksM

    MaksM Новичок

    Сообщения:
    30
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    Флоппик, спасибо огромное за наводку ).
    Я сделал копию ResetPassword в MyResetPassword, там переписал сообщение по русски, а в модели пользователя перекрыл sendPasswordNotification

    PHP:
    public function sendPasswordResetNotification($token)
    {
        
    $this->notify(new MyResetPassword($token));
    }
    И все стало как надо )
     
  9. sergioz

    sergioz Новичок

    Сообщения:
    1
    Ваш город:
    Нижний Новгород, Нижегородская область, Россия
    Address:
    Nizhny Novgorod, Russia
    Country:
    Location on Map:

    У Вас восстановление пароля адекватно работает? Просто я сделал как [ссылка удалена] описано, возникают проблемы с токеном, он не передается в УРЛ, не могу понять, почему именно
     
    Последнее редактирование модератором: 6 дек 2018
  10. c0dex

    c0dex web.dev 2002-... Команда форума Партнер клуба

    Сообщения:
    7.743
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    @sergioz, да, у него все работает. По своим вопросам создаем отдельный тред