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;
控制器:
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);
}
}
模型:
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拓展下载:
中文网址:
常用命令,同mysql,eg:
showusers;
showdbs;
db.version();
db.stats();
useyiimongodb;
showcollections;
相关文章推荐
- MongoDB创建数据库和集合命令db.createCollection详解(转)
- MongoDB设置访问权限、设置用户(转)
- java操作mongoDB
- php mongodb 主从切换后,连接的问题
- mongodb 安装配置实践
- 用java连接mongodb并执行$match和$group结合的聚合函数的实例。
- mongodb分片部署说明
- mongodb 主从切换
- SQL数据导入mongodb
- MongoDB 命令笔记
- SpringMVC整合Mongodb开发 架构搭建
- SpringMVC整合Mongodb开发,高级操作
- mongodb 导入和导出
- python操作mongodb
- Mongodb 和 spring的整合开发 权限认证 mongotemplate的group mapReduce开发
- mongo-connector实现MongoDB与elasticsearch实时同步深入详解
- MongoDB过过瘾
- windows下mongodb分片设置与集群搭建
- window平台安装MongoDB
- mongodb使用配置文件安装