Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Bezlepkin
Сообщения: 731 Зарегистрирован: 2012.11.10, 18:59
Контактная информация:
Сообщение
Bezlepkin » 2015.03.03, 15:38
Привет! На локале работает на хосте при php yii rbac/init
Код: Выделить всё
Warning: Invalid argument supplied for foreach() in /var/www/u6606979/public_html/dev/vendor/yiisoft/yii2/helpers/BaseArrayHelper.php on line 121
Exception 'yii\base\InvalidConfigException' with message 'The configuration for the "user" component must contain a "class" element.'
in /var/www/u6606979/public_html/dev/vendor/yiisoft/yii2/di/ServiceLocator.php:202
Stack trace:
#0 /var/www/u6606979/public_html/dev/vendor/yiisoft/yii2/di/ServiceLocator.php(258): yii\di\ServiceLocator->set('user', Array)
#1 /var/www/u6606979/public_html/dev/vendor/yiisoft/yii2/base/Component.php(169): yii\di\ServiceLocator->setComponents(Array)
#2 /var/www/u6606979/public_html/dev/vendor/yiisoft/yii2/BaseYii.php(518): yii\base\Component->__set('components', Array)
#3 /var/www/u6606979/public_html/dev/vendor/yiisoft/yii2/base/Object.php(105): yii\BaseYii::configure(Object(yii\console\Application), Array)
#4 /var/www/u6606979/public_html/dev/vendor/yiisoft/yii2/base/Application.php(206): yii\base\Object->__construct(Array)
#5 /var/www/u6606979/public_html/dev/vendor/yiisoft/yii2/console/Application.php(79): yii\base\Application->__construct(Array)
#6 /var/www/u6606979/public_html/dev/yii(30): yii\console\Application->__construct(Array)
#7 {main}
Demon_id
Сообщения: 421 Зарегистрирован: 2011.10.29, 00:13
Сообщение
Demon_id » 2015.03.03, 15:45
на локалке в локальном конфиге настроен user компонент. а на хосте в нём потерялся 'class'=>'....'
Bezlepkin
Сообщения: 731 Зарегистрирован: 2012.11.10, 18:59
Контактная информация:
Сообщение
Bezlepkin » 2015.03.03, 16:00
в main.php
'user' => [
'identityClass' => 'modules\user\models\User',
'enableAutoLogin' => true,
],
все есть
Demon_id
Сообщения: 421 Зарегистрирован: 2011.10.29, 00:13
Сообщение
Demon_id » 2015.03.03, 16:04
Bezlepkin писал(а): в main.php
'user' => [
'identityClass' => 'modules\user\models\User',
'enableAutoLogin' => true,
],
все есть
а main-local.php есть?
Bezlepkin
Сообщения: 731 Зарегистрирован: 2012.11.10, 18:59
Контактная информация:
Сообщение
Bezlepkin » 2015.03.03, 16:14
main-local.php
Код: Выделить всё
<?php
return [
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=...',
'username' => ...',
'password' => '...',
'charset' => 'utf8',
],
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
'viewPath' => '@common/mail',
// send all mails to a file by default. You have to set
// 'useFileTransport' to false and configure a transport
// for the mailer to send real emails.
'useFileTransport' => true,
],
],
];
Demon_id
Сообщения: 421 Зарегистрирован: 2011.10.29, 00:13
Сообщение
Demon_id » 2015.03.03, 16:14
padlyuck писал(а): 'class' => 'yii\web\User', потеряли
в конфиге он не нужен. он там по дефолту. благодаря такому коду из Application:
Код: Выделить всё
public function coreComponents()
{
return array_merge(parent::coreComponents(), [
'request' => ['class' => 'yii\web\Request'],
'response' => ['class' => 'yii\web\Response'],
'session' => ['class' => 'yii\web\Session'],
'user' => ['class' => 'yii\web\User'],
'errorHandler' => ['class' => 'yii\web\ErrorHandler'],
]);
}
ElisDN
Сообщения: 5845 Зарегистрирован: 2012.10.07, 10:24
Контактная информация:
Сообщение
ElisDN » 2015.03.03, 16:58
А в console/config/main.php или common/config/main.php компонент user есть?
Последний раз редактировалось
ElisDN 2015.03.03, 17:18, всего редактировалось 1 раз.
padlyuck
Сообщения: 302 Зарегистрирован: 2015.02.03, 09:50
Сообщение
padlyuck » 2015.03.03, 17:17
Demon_id писал(а): padlyuck писал(а): 'class' => 'yii\web\User', потеряли
в конфиге он не нужен. он там по дефолту. благодаря такому коду из Application:
Код: Выделить всё
public function coreComponents()
{
return array_merge(parent::coreComponents(), [
'request' => ['class' => 'yii\web\Request'],
'response' => ['class' => 'yii\web\Response'],
'session' => ['class' => 'yii\web\Session'],
'user' => ['class' => 'yii\web\User'],
'errorHandler' => ['class' => 'yii\web\ErrorHandler'],
]);
}
специально проверил. в common/config/main.php
было
Код: Выделить всё
'components' => [
'user' => [
'class' => 'yii\web\User',
'identityClass' => 'dektrium\user\models\User',
'enableAutoLogin' => true,
'loginUrl' => ['/user/security/login'],
],
]
комментирую строчку 'class' => 'yii\web\User', вызов ./yii падает ровно с той же ошибкой что и у автора. при этом web приложения работают нормально как будто ничего и не менялось
ElisDN
Сообщения: 5845 Зарегистрирован: 2012.10.07, 10:24
Контактная информация:
Сообщение
ElisDN » 2015.03.03, 17:20
Bezlepkin писал(а): Нет
Тогда либо добавьте в console/config/main.php или перенесите из backend и frontend в common/config/main.php.
Bezlepkin
Сообщения: 731 Зарегистрирован: 2012.11.10, 18:59
Контактная информация:
Сообщение
Bezlepkin » 2015.03.04, 13:50
Прописал 'class' => 'yii\web\User', - заработало!
Спасибо!