Yii2-user

Выкладываем свои наработки
Аватара пользователя
vitaxa_prog
Сообщения: 300
Зарегистрирован: 2011.06.06, 22:44
Откуда: Волноваха

Re: Yii2-user

Сообщение vitaxa_prog » 2016.11.16, 01:06

Loveorigami писал(а):Отключите использование флешей модуля.
В конфиге поставьте в enableFlashMessages = false
"Отличный" совет. Вместо того, что бы сообщить разрабам о баге, лучше отключить флеш-сообщения, дабы не получать нотайс о том, что переменная $module не определена, ага. :shock:
В принципе ничего нет невозможного.
— Вы думаете?
— Для человека. С интеллектом.

louisvuitton
Сообщения: 168
Зарегистрирован: 2014.02.16, 03:09

Re: Yii2-user

Сообщение louisvuitton » 2016.11.16, 09:12

Тем более что просто отключение не поможет. Проверка то все равно будет проходить. Пока я сделал так - переопределил эту вьюху, и в собственном _alert.php делаю так

вместо

if ($module->enableFlashMessages):

пишу

if (Yii::$app->getModule('user')->enableFlashMessages):

Это норм?


Еще вопрос, мне почти для всех страниц модуля user нужно переопределить layout. Как это сделать лучшим способом? (сейчас переопределяю контроллеры добавляю в них одно единственное свойство public $layout = '/admin'; Может есть способ попроще?

zelenin
Сообщения: 10491
Зарегистрирован: 2013.04.20, 11:30

Re: Yii2-user

Сообщение zelenin » 2016.11.16, 09:16

вообще в user/settings/account (урл со скрина) $module передается в _alert
https://github.com/dektrium/yii2-user/b ... nt.php#L25

Loveorigami
Сообщения: 764
Зарегистрирован: 2014.08.27, 21:54

Re: Yii2-user

Сообщение Loveorigami » 2016.11.16, 09:21

vitaxa_prog писал(а):
Loveorigami писал(а):Отключите использование флешей модуля.
В конфиге поставьте в enableFlashMessages = false
"Отличный" совет. Вместо того, что бы сообщить разрабам о баге, лучше отключить флеш-сообщения, дабы не получать нотайс о том, что переменная $module не определена, ага. :shock:
Баги в вашем ответе. Все там определено.
У меня все работает и с включенным и с выключенным enableFlashMessages.

louisvuitton
Сообщения: 168
Зарегистрирован: 2014.02.16, 03:09

Re: Yii2-user

Сообщение louisvuitton » 2016.11.16, 09:33

Только не надо ссориться)

Спасибо, у меня оказывается была переопределена views/settings/account.php еще когда там не передавалась переменная $module :oops:

По второму вопросу про layout посоветуете что-нибудь?

Loveorigami
Сообщения: 764
Зарегистрирован: 2014.08.27, 21:54

Re: Yii2-user

Сообщение Loveorigami » 2016.11.16, 11:08

в конфиге модуля

Код: Выделить всё

        'user' => [
            'class' => dektrium\user\Module::class,
             'layout' => '@backend/views/layouts/common',
        ], 

louisvuitton
Сообщения: 168
Зарегистрирован: 2014.02.16, 03:09

Re: Yii2-user

Сообщение louisvuitton » 2016.11.16, 22:32

Спс, в очередной раз оказывается, что все уже придумано до нас

Аватара пользователя
vitaxa_prog
Сообщения: 300
Зарегистрирован: 2011.06.06, 22:44
Откуда: Волноваха

Re: Yii2-user

Сообщение vitaxa_prog » 2016.11.17, 19:29

Loveorigami писал(а):Баги в вашем ответе. Все там определено.
У меня все работает и с включенным и с выключенным enableFlashMessages.
:) У меня, тоже работает. А у человека нет. И на скрине написано, что

Код: Выделить всё

Undefined variable: module
.
Какая связь с enableFlashMessages в вашем ответе, не понятно. Не нужно резких заявлений.
В принципе ничего нет невозможного.
— Вы думаете?
— Для человека. С интеллектом.

Аватара пользователя
vladvlad
Сообщения: 13
Зарегистрирован: 2016.11.07, 12:27

Re: Yii2-user

Сообщение vladvlad » 2016.12.03, 12:51

А куда собственно пропал сам dektrium/Dmitry Erofeev/dmeroff ? Его последняя активность на гитхабе 13 августа, а на хабре 4 ноября. На гитхабе уже куча реквестов висит с исправлениями и доработками.

ttt
Сообщения: 13
Зарегистрирован: 2016.12.18, 20:31

Re: Yii2-user

Сообщение ttt » 2016.12.18, 20:48

Использую yii2-user от dektrium.
Добавил поля в аккаунт пользователя по инструкции
https://github.com/dektrium/yii2-user/b ... r-model.md
+ сделал оверрайдинг формы редактирования аккаунта пользователем SettingsForm.php
и сделал свое представление account.php
При регистрации все дополнительные поля сохраняются в базе,
а вот при попытке редактирования профиля через user/settings/account
не отображает в форме содержимое этих дополнительных полей.
При этом если ввести в эти дополнительные поля данные и сохранить,
то в базе они обновляются. Тоесть проблема только с подгрузкой полей в форму из базы
при редактировании профиля user/settings/account.
Прошу подсказать путь решения проблемы. В официальной документации нет ни слова об этом. Возможно там есть какие-то нюансы.

Аватара пользователя
ElisDN
Сообщения: 4959
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Yii2-user

Сообщение ElisDN » 2016.12.19, 11:25

ttt писал(а):не отображает в форме содержимое этих дополнительных полей.
Переопределите их заполнение в https://github.com/dektrium/yii2-user/b ... rm.php#L64

ttt
Сообщения: 13
Зарегистрирован: 2016.12.18, 20:31

Re: Yii2-user

Сообщение ttt » 2016.12.19, 23:58

[quote="
ElisDN писал(а): Переопределите их заполнение в https://github.com/dektrium/yii2-user/b ... rm.php#L64
ElisDN, прошу Вас подсказать как переопределить функцию для добавления поля. С function rules() все проще было.

Функция в модели SettingsForm.php

Код: Выделить всё

...
public function __construct(Mailer $mailer, $config = [])
    {
        $this->mailer = $mailer;
        $this->setAttributes([
            'username' => $this->user->username,
            'email'    => $this->user->unconfirmed_email ?: $this->user->email,
        ], false);
        parent::__construct($config);
    }
 ...   

Аватара пользователя
ElisDN
Сообщения: 4959
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Yii2-user

Сообщение ElisDN » 2016.12.20, 09:30

Код: Выделить всё

public function __construct(Mailer $mailer, $config = [])
{
    $this->setAttributes([
        'address' => $this->user->address,
    ], false);
    parent::__construct($mailer, $config);
} 

Nex-Otaku
Сообщения: 796
Зарегистрирован: 2016.07.09, 21:07

Re: Yii2-user

Сообщение Nex-Otaku » 2017.01.07, 18:46

Отличный модуль, большое спасибо разработчику - сэкономил кучу нервов и времени, использую в своих проектах, всё работает.

Тем не менее, хотелось бы доработать модуль, сделать его удобнее и универсальнее.
А именно:

1. Настройка полей профиля.

Отключать неиспольуземые поля, добавлять свои, в том числе иметь возможность отключить аватарку. Сейчас любое добавление-удаление полей профиля влечёт за собой переопределение кучи вьюшек, это не очень удобно.

Необходимый минимум - быстрое отключение существующих полей и простое добавление собственных. В своей доработанной версии я сделал это через массив в конфигурации модуля.

Как я понимаю, работа в этом направлении уже идёт, хоть результата ещё нет. Будем посмотреть.

2. Электронная почта в качестве логина, email = username.

Такой способ регистрации используется во множестве сервисов, это очень удобно. Поэтому думаю, что фича пригодится. В данный момент модуль это не поддерживает.

В своей версии я уже сделал и простестировал фичу. Как найду время, залью Pull Request.

3. Переопределение Finder.

Нельзя переопределить Finder в настройках модуля. В своей версии я решил это с помощью костыля: в "bootstrap" добавил переопределение с помощью "Yii::$classMap".

Нужно вынести класс Finder в настройки модуля, аналогично моделям. Тогда его легко будет переопределить при необходимости.

Quercus
Сообщения: 2
Зарегистрирован: 2017.02.13, 00:57

Re: Yii2-user

Сообщение Quercus » 2017.02.13, 01:03

Скажите как избавится от двух одинаковых FlashMessages на странице при успешным или не успешным действием, шаблон Advance.
На Basic такого нет

Аватара пользователя
vitaxa_prog
Сообщения: 300
Зарегистрирован: 2011.06.06, 22:44
Откуда: Волноваха

Re: Yii2-user

Сообщение vitaxa_prog » 2017.02.13, 09:52

Quercus писал(а):
2017.02.13, 01:03
Скажите как избавится от двух одинаковых FlashMessages на странице при успешным или не успешным действием, шаблон Advance.
На Basic такого нет
Переопределить нужные представления. В них убрать

Код: Выделить всё

echo Alert:widget();
потому что у вас в лейауте уже есть вывод

Код: Выделить всё

echo Alert:widget();
по этому у вас и выводится два алерта.
В принципе ничего нет невозможного.
— Вы думаете?
— Для человека. С интеллектом.

Quercus
Сообщения: 2
Зарегистрирован: 2017.02.13, 00:57

Re: Yii2-user

Сообщение Quercus » 2017.02.14, 22:32

vitaxa_prog писал(а):
2017.02.13, 09:52

по этому у вас и выводится два алерта.
спасибо разобрался

ddmitrenko
Сообщения: 50
Зарегистрирован: 2015.02.04, 16:31

Re: Yii2-user

Сообщение ddmitrenko » 2017.08.28, 16:55

Здравствуйте. Мне необходимо добавить обработку доп. поля в таблицу пользователей. Как это ГРАМОТНО сделать? Не хочется править исходники модуля
С уважением, Дмитрий.

Аватара пользователя
vitaxa_prog
Сообщения: 300
Зарегистрирован: 2011.06.06, 22:44
Откуда: Волноваха

Re: Yii2-user

Сообщение vitaxa_prog » 2017.08.28, 20:45

В принципе ничего нет невозможного.
— Вы думаете?
— Для человека. С интеллектом.

ddmitrenko
Сообщения: 50
Зарегистрирован: 2015.02.04, 16:31

Re: Yii2-user

Сообщение ddmitrenko » 2017.08.28, 22:18

vitaxa_prog писал(а):
2017.08.28, 20:45
Наследование?
https://github.com/dektrium/yii2-user/b ... -models.md
Оно. Только не понятно как формы в контроллере менять?
С уважением, Дмитрий.

Ответить