myweishanli 2015-12-15 01:49:09 6086次浏览 0条评论 0 0 0

SSDB是一款类似于Redis的NoSql数据库

由于公司需要 所以开发的此扩展

github: https://github.com/myweishanli/yii2-ssdb

更多功能开发中...

安装

安装这个扩展的首选方式是通过 composer.

执行

composer require myweishanli/yii2-ssdb:dev-master

或添加

"myweishanli/yii2-ssdb": "dev-master"

配置

高级版是common/config/main-local.php

基础版是config/web.php

'components' => [
    // ...
    'ssdb' => [
        'class' => 'wsl\ssdb\Connection',
        'host' => 'localhost',
        'port' => 8888,
    ],
],

创建数据模型

common/models/ssdb/User.php

/**
 * This is the ActiveRecord class for [[\common\models\User]].
 *
 * @property string $user_id
 * @property string $name
 * @property integer $age
 * @property integer $status
 */
class User extends \wsl\ssdb\ActiveRecord
{
    public static $modelClass = '\common\models\User';
}

Active Record、Active Query使用说明

默认只能使用单个主键排序 更多排序查询自定义排序规则

新增或者替换数据

$userModel = new User();
$userModel->user_id = 1000000;
$userModel->name = '张三';
$userModel->age = 19;
$userModel->status = 0;
$userModel->save();

获取一条数据

$model = User::find()->one();

获取一条数据 排序

$model = User::find()->orderBy('user_id asc')->one();

删除全部

User::deleteAll();

获取一条数据 条件查询

$model = User::find()->andWhere(['user_id' => 1000000])->one();

获取一条数据 多条件查询

$model = User::find()->andWhere(['user_id' => 1000000, 'age' => 19])->one();

获取所有数据列表

$models = User::find()->all();

获取所有数据列表 排序

$models = User::find()->orderBy('age desc')->all();

获取所有数据列表 条件查询

$models = User::find()->andWhere(['user_id' => 1000000])->all();

分页数据列表

$models = User::find()->offset(1)->limit(1)->all();

使用DataProvider

$dataProvider = new ActiveDataProvider([
    'query' => User::find(),
     'pagination' => [
         'pageSize' => 20,
     ],
]);
foreach ($dataProvider->getModels() as $itemModel) {
    // code...
}

更多应用

    没有找到数据。
您需要登录后才可以评论。登录 | 立即注册