Closed maxxer closed 8 years ago
It must work for all: https://github.com/bupy7/yii2-activerecord-history/blob/master/Module.php#L33
Give me code of the app\models\User
, please.
<?php
/**
* Override del modello User di Yii2-Users per ottere isAdmin da RBAC
*/
namespace app\models;
use dektrium\user\models\User as BaseUser;
/**
* User ActiveRecord model.
*
* @inherit
*/
class User extends BaseUser
{
}
@maxxer you need specify the COMPONENT and does not the MODEL in user
property of module. give me your the config file, please.
Hm I think I did that. Here's the console config:
<?php
Yii::setAlias('@tests', dirname(__DIR__) . '/tests/codeception');
$params = require(__DIR__ . '/params.php');
$db = require(__DIR__ . '/db.php');
$config = [
'id' => 'basic-console',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log', 'arhistory'],
'controllerNamespace' => 'app\commands',
'components' => [
'cache' => [
'class' => 'yii\caching\FileCache',
],
'log' => [
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning'],
],
],
],
'user' => [
'class' => 'app\models\User',
'identityClass' => 'dektrium\user\models\User',
],
'db' => $db,
],
'modules' => [
'user' => [
'class' => 'dektrium\user\Module',
'enableRegistration' => false,
'enableConfirmation' => false,
],
'rbac' => 'dektrium\rbac\RbacConsoleModule',
'arhistory' => [
'class' => 'bupy7\activerecord\history\Module',
],
],
'params' => $params,
/*
'controllerMap' => [
'fixture' => [ // Fixture generation command line.
'class' => 'yii\faker\FixtureController',
],
],
*/
];
if (YII_ENV_DEV) {
// configuration adjustments for 'dev' environment
$config['bootstrap'][] = 'gii';
$config['modules']['gii'] = [
'class' => 'yii\gii\Module',
];
}
return $config;
'user' => [
'class' => 'app\models\User',
'identityClass' => 'dektrium\user\models\User',
],
what is? =) class is incorrect.
'user' => [
'class' => 'yii\web\User',
'identityClass' => 'app\models\User',
],
you should fix it
Yii2-user requires the user's component key to be omitted. In case it's needed must be filled like this:
'user' => [
'class' => 'app\components\User',
'identityClass' => 'dektrium\user\models\User',
],
so I've placed there my model
@maxxer where class
there must be COMPONENT and does not MODEL. I above write it.
so replacing it with
'class' => 'yii\web\User',
should be enough? Indeed I tried now and running the console command doesn't return any error...
Yes, it enough. =)
oh thanks, sorry for the mistake!
Don't worry, @maxxer =)
and thank you for this very useful extension!
;-)
The Module::init checks that the User component is yii\web\User. When using the yii2-user extension the component class can be a custom one, like app\models\User. This makes migration fails with the following message:
Is it possible to make it work with any custom User class?