|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
|||||||||||
Error: Failed to instantiate component or class "user"07.01.2018, 17:48. Показов 20366. Ответов 17
итак у меня была задача--- блокировать новых юзеров через каждых 3 дня после регистрации если они не активировали профиль.
для системы авторизации я использую модуль user от дектриума (https://github.com/dektrium/yii2-user ) и систему распределения ролей тоже от дектриума (dektrium/yii2-rbac) Чтоб выполнить эту задачу я решил создать контроллер в папке console с екшеном который будет делать редирект в екшен дектриума который лежит в папке -/yii2-user/controllers/AdminController.php и который отвечает за блокировку юзеров (actionBlock). Однако оказалось что редирект делать со своего екшена вызвав его в консоли невозможно. Error: Calling unknown method: yii\console\Request::validateCsrfToken() Поэтому раз вызвать свой екшен для редиректа в консоли невозможно,я просто решил скопировать контроллер дектриума в свой контроллер и просто вписать в екшене нужные айдиюзеров для блокировки чтоб тут же и проверить сработает ли такой вариант в консоли. Но когда поробовал запустить этот скопированый екшен (actionBlock),то выдало ошибку Error: Failed to instantiate component or class "user". Почему ошибка ? ================= Это контролер console/controllers/BlockusersController.php тот в котором все скопировано с контроллера AdminController c папки yii2-user/controllers/
А это main.php в папке console,может там чего то не хватает
0
|
|||||||||||
| 07.01.2018, 17:48 | |
|
Ответы с готовыми решениями:
17
Error C2259: cannot instantiate abstract class Uncaught Error: [$injector:modulerr] Failed to instantiate module app due to sqlconnection error login failed user |
|
2 / 2 / 1
Регистрация: 17.12.2017
Сообщений: 39
|
|
| 07.01.2018, 20:21 | |
|
а класс User где лежит? User - это же класс-модель, она должна быть в путях.
public function actionCreate() { /** @var User $user */ $user = \Yii::createObject([ 'class' => User::className(), 'scenario' => 'create', ]); .................. вот у Вас указано где искать юзера: use dektrium\user\models\User; проверяй пути и namespace
0
|
|
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
|
| 07.01.2018, 22:37 [ТС] | |
|
Саня-нн, правильно неймспейс написан
а о каких путях идет речь и в каких файлах ?
0
|
|
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
|
| 07.01.2018, 22:38 [ТС] | |
|
Саня-нн, правильно неймспейс написан
0
|
|
|
2 / 2 / 1
Регистрация: 17.12.2017
Сообщений: 39
|
|
| 08.01.2018, 09:57 | |
|
посмотри в логах на какую строку ругается на 486?
486 if ($id == \Yii::$app->user->getId()) или раньше?
0
|
|
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
|
| 08.01.2018, 15:35 [ТС] | |
|
Саня-нн, 2018-01-08 12:32:24 [-][-][-][error][yii\base\InvalidConfigException] ReflectionException: Class user does not exist in /var/www/html/vendor/yiisoft/yii2/di/Container.php:426
Stack trace: #0 /var/www/html/vendor/yiisoft/yii2/di/Container.php(426): ReflectionClass->__construct('user') #1 /var/www/html/vendor/yiisoft/yii2/di/Container.php(364): yii\di\Container->getDependencies('user') #2 /var/www/html/vendor/yiisoft/yii2/di/Container.php(156): yii\di\Container->build('user', Array, Array) #3 /var/www/html/vendor/yiisoft/yii2/di/Instance.php(167): yii\di\Container->get('user') #4 /var/www/html/vendor/yiisoft/yii2/di/Instance.php(137): yii\di\Instance->get(NULL) #5 /var/www/html/vendor/yiisoft/yii2/filters/AccessControl.php(102): yii\di\Instance::ensure(Object(yii\di\In stance), 'yii\\web\\User') #6 /var/www/html/vendor/yiisoft/yii2/base/BaseObject.php(108): yii\filters\AccessControl->init() #7 [internal function]: yii\base\BaseObject->__construct(Array) #8 /var/www/html/vendor/yiisoft/yii2/di/Container.php(381): ReflectionClass->newInstanceArgs(Array) #9 /var/www/html/vendor/yiisoft/yii2/di/Container.php(156): yii\di\Container->build('yii\\filters\\Acc...', Array, Array) #10 /var/www/html/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container->get('yii\\filters\\Acc...', Array, Array) #11 /var/www/html/vendor/yiisoft/yii2/base/Component.php(679): yii\BaseYii::createObject(Array) #12 /var/www/html/vendor/yiisoft/yii2/base/Component.php(663): yii\base\Component->attachBehaviorInternal('access', Array) #13 /var/www/html/vendor/yiisoft/yii2/base/Component.php(545): yii\base\Component->ensureBehaviors() #14 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(274): yii\base\Component->trigger('beforeAction', Object(yii\base\ActionEvent)) #15 /var/www/html/vendor/yiisoft/yii2/web/Controller.php(164): yii\base\Controller->beforeAction(Object(yii\base\InlineActi on)) #16 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(155): yii\web\Controller->beforeAction(Object(yii\base\InlineActi on)) #17 /var/www/html/vendor/yiisoft/yii2/base/Module.php(528): yii\base\Controller->runAction('block', Array) #18 /var/www/html/vendor/yiisoft/yii2/console/Application.php(180): yii\base\Module->runAction('blockusers/bloc...', Array) #19 /var/www/html/vendor/yiisoft/yii2/console/Application.php(147): yii\console\Application->runAction('blockusers/bloc...', Array) #20 /var/www/html/vendor/yiisoft/yii2/base/Application.php(386): yii\console\Application->handleRequest(Object(yii\console\Reques t)) #21 /var/www/html/yii(27): yii\base\Application->run() #22 {main} ================== Next yii\base\InvalidConfigException: Failed to instantiate component or class "user". in /var/www/html/vendor/yiisoft/yii2/di/Instance.php:139
0
|
|
|
Особый статус
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
|
||||||
| 08.01.2018, 18:04 | ||||||
|
Определите компонент в нужном конфиг файле, примерно так:
Troubleshooting
0
|
||||||
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
||||||
| 08.01.2018, 18:13 [ТС] | ||||||
|
FloppyDisc, в каком именно конфиг файле в папке console файла main.php ?
в файле main папки backend уже есть такие строчки
0
|
||||||
|
14 / 60 / 21
Регистрация: 15.06.2017
Сообщений: 572
|
||
| 08.01.2018, 20:01 | ||
|
во всей теме не найдено ни одного использования класса BlockusersController.зато есть ошибка
0
|
||
|
Особый статус
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
|
|
| 08.01.2018, 22:13 | |
|
TVPNERO, видимо в консольный
0
|
|
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
|
| 09.01.2018, 10:16 [ТС] | |
|
FloppyDisc, пробовал в консольной но не устранило ошибку
otto-fukin, вот использование блокюзерс
0
|
|
|
Особый статус
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
|
|||||||
| 09.01.2018, 15:41 | |||||||
|
TVPNERO, как вы пробовали, покажите. В консольном приложении нет Yii::$app->user, его нужно определить в компонентах консольного конфиг файла
Но, вроде идентификации все-равно никакой не будет, разве что самому идентифицировать пользователя:
0
|
|||||||
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
||||||
| 10.01.2018, 21:19 [ТС] | ||||||
|
FloppyDisc, тaк прописал в конфиге папки console
а нет теперь ошибка изменилась теперь выдало Error: Class app\models\User does not exist Добавлено через 4 минуты FloppyDisc, а нет теперь ошибка изменилась теперь выдало Error: Class app\models\User does not exist
0
|
||||||
|
Особый статус
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
|
|
| 10.01.2018, 21:42 | |
|
Ну написано же нет такого класса. Да и вообще нужно было прописать в ветке components
0
|
|
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
|
| 10.01.2018, 21:49 [ТС] | |
|
FloppyDisc, как нет.
такой клас в паке дектриума есть dektrium\user\models\User'
0
|
|
|
Особый статус
623 / 221 / 164
Регистрация: 18.11.2015
Сообщений: 1,086
|
|||
| 10.01.2018, 21:53 | |||
|
и
0
|
|||
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
|
| 10.01.2018, 22:00 [ТС] | |
|
FloppyDisc, и что мне это скажет ?
нужно скопировать класс User из дектриума в директорию app/models/ ? ибо все данные оперируються из модели User дектриума
0
|
|
|
9 / 8 / 12
Регистрация: 29.03.2016
Сообщений: 1,154
|
||||||
| 13.01.2018, 21:05 [ТС] | ||||||
|
FloppyDisc,
я скопировал класс дектриума User в console\models\User
но вылезла ошибка Error: Setting unknown property: console\models\User::identityClass
0
|
||||||
| 13.01.2018, 21:05 | |
|
Помогаю со студенческими работами здесь
18
Login failed for user sa error 18456 Fatal error: Class 'JModelForm' not found in /public_html/libraries/joomla/application/component/modeladmin.php on line Fatal error: Class 'JModel' not found in /home/login44/public_html/libraries/joomla/application/component/controller.php on line 382 Login failed for user 'bob'. The user is not associated with a trusted SQL Server connection. Fatal error: Class user contains 1 abstract method and must therefore be declared abstract or implement the remaining Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|