sersid/yii2-user-profile

Yii2 用户配置

安装次数: 84

依赖者: 0

建议者: 0

安全: 0

星标: 1

关注者: 2

分支: 0

开放问题: 0

类型:yii2-extension

dev-master 2015-03-17 16:21 UTC

This package is not auto-updated.

Last update: 2024-09-14 17:11:10 UTC


README

从数据库管理配置

安装

安装此扩展的首选方式是通过 Composer

运行以下命令之一

php composer.phar require --prefer-dist sersid/yii2-user-profile "dev-master"

或者

"sersid/yii2-user-profile": "dev-master"

将以下内容添加到您的 composer.json 文件的 require 部分中。

应用迁移

yii migrate --migrationPath=@vendor/sersid/yii2-user-profile/migrations

$config = [
    ...
    'components' => [
        ...
        'profile' => [
            'class' => 'sersid\profile\components\Profile',
        ],
    ]
];

使用方法

安装扩展后,只需在代码中通过以下方式使用它:

设置

Yii::$app->profile->set('foo', 'bar');
Yii::$app->profile->set(['foo' => 'bar']);

获取

Yii::$app->profile->get('foo'); // bar

模型

Yii::$app->profile->model(); // sersid\profile\models\Model

创建字段

创建迁移

yii migrate/create profile_fields
use yii\db\Schema;
use yii\db\Migration;
class m150317_155953_profile_fields extends Migration
{
    public function up()
    {
        $this->addColumn('{{%profile}}', 'lang', Schema::TYPE_STRING);
        // ... your fields
    }
    public function down()
    {
        $this->dropColumn('{{%profile}}', 'lang');
        // ... your fields
    }
}

更新模型

namespace app\models;
use sersid\profile\models\Model;
class Profile extends Model
{
    const LANG_EN = 'en';
    const LANG_RU = 'ru';
    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            ['lang', 'default', 'value' => self::LANG_EN],
            ['lang', 'in', 'range' => [self::LANG_EN, self::LANG_RU]],
            // ... your rules
        ];
    }
}

$config = [
    ...
    'components' => [
        ...
        'profile' => [
            'class' => 'sersid\profile\components\Profile',
            'model' => 'app\models\Profile',
        ],
    ]
];

卸载

应用迁移

yii migrate/down --migrationPath=@vendor/sersid/yii2-user-profile/migrations