您的位置:首页 > 数据库 > Mongodb

YII2操作mongodb笔记(转)

2016-07-07 17:52 585 查看
componets配置:

'mongodb'=>[ 'class'=>'\yii\mongodb\Connection', 'dsn'=>'mongodb://test:123456@127.0.0.1:27017/yiimongodb', ],

  


控制器:

<?php
namespacefrontend\controllers;
useYii;
useyii\helpers\Url;
useyii\mongodb\Query;
useyii\web\Controller;
useyii\data\ActiveDataProvider;
usefrontend\models\Customer;
classMonControllerextendsController
{
publicfunctionactionIndex()
{
$collection=Yii::$app->mongodb->getCollection('customer');
$res=$collection->insert([
'name'=>'JohnSmith22',
'status'=>2
]);
var_dump($res);
}
publicfunctionactionList()
{
$query=newQuery();
$query->select([
'name',
'status'
])->from('customer')->offset(10)->limit(10);
$rows=$query->all();
var_dump($rows);
}
publicfunctionactionView()
{
$query=newQuery();
$row=$query->from('customer')->one();
echoUrl::toRoute([
'item/update',
'id'=>(string)$row['_id']
]);
var_dump($row['_id']);
var_dump((string)$row['_id']);
}
publicfunctionactionFind()
{
$provider=newActiveDataProvider([
'query'=>Customer::find(),
'pagination'=>[
'pageSize'=>10
]
]);
$models=$provider->getModels();
var_dump($models);
}
publicfunctionactionQuery()
{
$query=newQuery();
$query->from('customer')->where([
'status'=>2
]);
$provider=newActiveDataProvider([
'query'=>$query,
'pagination'=>[
'pageSize'=>10
]
]);
$models=$provider->getModels();
var_dump($models);
}
publicfunctionactionSave()
{
$res=Customer::saveInfo();
var_dump($res);
}
}


  


模型:

<?php
namespacefrontend\models;
useyii\mongodb\ActiveRecord;
classCustomerextendsActiveRecord
{
publicstaticfunctioncollectionName()
{
return'customer';
}
publicfunctionsaveInfo()
{
$customer=newCustomer();
$customer->name='111';
$customer->email='222';
$customer->insert();
return$customer;
}
publicfunctionattributes()
{
return[
'_id',
'name',
'email',
'address',
'status'
];
}
}


  


YII2的mongodb拓展下载:

https://github.com/yiisoft/yii2-mongodb

中文网址:

http://www.runoob.com/

http://www.mongoing.com/

http://www.cnblogs.com/libingql/archive/2011/06/09/2076440.html

常用命令,同mysql,eg:

db.createUser({"user":"test","pwd":"123456","roles":["readWrite","dbAdmin"]})

showusers;

showdbs;

db.version();

db.stats();

useyiimongodb;

showcollections;


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: