yii2.0控制层操作分页增删
2016-10-31 15:08
281 查看
增删改查
查询
分页
<span style="font-size:18px;">Controller:
/**
*@action yii多表链接查询后分页
*@-----------------------------------------------------------
*@ book 表和 bookpress 联查后分页
*/
use yii\db\Query;//调用Query方法
public function actionShow(){
$query = new Query();
$list = $query->from("cart")->all();
// var_dump($list);die;
$pages = new Pagination([
'totalCount' =>count($list),
'pageSize' =>3,//pageSize 每页显示的条数
]);
$data = $query->offset($pages->offset)->limit($pages->limit)->all();
return $this->render('show',['data'=>$data,'pages' => $pages,]);
}]);
} </span>
添加
修改
删除
Yii2.0高级版本开发指南网址:
http://www.yii-china.com/doc/detail/1.html?postid=280
控制器跳页面操作
$this->redirect(['text/show']); // 跳转控制器
return $this->render('upda',["data"=>$data]); //跳转视图页面并传值
查询
<span style="font-size:18px;"><span style="font-size:18px;">查询返回多行: $command = Yii::$app->db->createCommand('SELECT * FROM post'); $posts = $command->queryAll(); 返回单行 $command = Yii::$app->db->createCommand('SELECT * FROM post WHERE id=1'); $post = $command->queryOne(); 查询多行单值: $command = Yii::$app->db->createCommand('SELECT title FROM post'); $titles = $command->queryColumn(); 查询标量值/计算值: $command = Yii::$app->db->createCommand('SELECT COUNT(*) FROM post'); $postCount = $command->queryScalar();</span></span>
分页
<span style="font-size:18px;">Controller:
/**
*@action yii多表链接查询后分页
*@-----------------------------------------------------------
*@ book 表和 bookpress 联查后分页
*/
use yii\db\Query;//调用Query方法
public function actionShow(){
$query = new Query();
$list = $query->from("cart")->all();
// var_dump($list);die;
$pages = new Pagination([
'totalCount' =>count($list),
'pageSize' =>3,//pageSize 每页显示的条数
]);
$data = $query->offset($pages->offset)->limit($pages->limit)->all();
return $this->render('show',['data'=>$data,'pages' => $pages,]);
}]);
} </span>
<p><span style="font-size:24px;">controller:</span></p><pre><code class="hljs php"><span style="font-size:18px;"><span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">actionIndex</span><span class="hljs-params">()</span> </span>{ $query = Article::find()->where([<span class="hljs-string">'status'</span> => <span class="hljs-number">1</span>]); $countQuery = <span class="hljs-keyword">clone</span> $query; $pages = <span class="hljs-keyword">new</span> Pagination([<span class="hljs-string">'totalCount'</span> => $countQuery->count()]); $models = $query->offset($pages->offset) ->limit($pages->limit) ->all(); <span class="hljs-keyword">return</span> <span class="hljs-keyword">$this</span>->render(<span class="hljs-string">'index'</span>, [ <span class="hljs-string">'models'</span> =& 4000 gt; $models, <span class="hljs-string">'pages'</span> => $pages, ]); } <span style="font-size:18px;"></span></span></code><pre name="code" class="php">Model: /** * @inheritdoc 多表联查数据 */ function pages() { //注意: 查询的时候不能加 all 或者 asArray 查出来是对象就可以了 return $this->find() ->select('*') ->innerJoin("`book_press` as bp on `bp`.`book_id` = `book`.`title_id`"); /* 此处去掉 ->asArray() ->all(); */ }
VIEWS: <?php use yii\helpers\Html; use yii\widgets\LinkPager; ?> <table border=1> <?php foreach ($models as $model): ?> <tr> <td><?= $model['title']; ?></td> <td><?= $model['author']; ?></td> </tr> <?php endforeach; ?> </table> echo LinkPager::widget([ 'pagination' => $pages, ]); //或 <?= LinkPager::widget(['pagination' => $pages, 'firstPageLabel' => '首页', 'lastPageLabel' => '最后一页', 'prevPageLabel' => '上一页', 'nextPageLabel' => '下一页', 'maxButtonCount'=>5, //控制每页显示的页数 ]); ?>
添加
<span style="font-size:18px;">//使用createCommand()进行新增数据 Yii::$app->db->createCommand()->insert('user', [ 'name' => 'test', 'age' => 30, ])->execute(); //批量插入数据 Yii::$app->db->createCommand()->batchInsert('user', ['name', 'age'], [ ['test01', 30], ['test02', 20], ['test03', 25], ])->execute();</span>
修改
<span style="font-size:18px;">使用createCommand()修改 Yii::$app->db->createCommand()->update('user', ['age' => 40], 'name = test')->execute();</span>
删除
<span style="font-size:18px;">使用createCommand()删除 Yii::$app->db->createCommand()->delete('user', 'age = 30')->execute();</span>
Yii2.0高级版本开发指南网址:
http://www.yii-china.com/doc/detail/1.html?postid=280
控制器跳页面操作
$this->redirect(['text/show']); // 跳转控制器
return $this->render('upda',["data"=>$data]); //跳转视图页面并传值
相关文章推荐
- Yii2.0数据库操作增删改查详解
- Yii2.0高级框架数据库增删改查的一些操作(转)
- Yii2.0高级框架数据库增删改查的一些操作
- yii 2.0 操作 增删改查 两种方法 ajax 批删
- Yii2.0数据库操作增删改查详解 [ 2.0 版本 ]
- Yii2.0高级框架数据库增删改查的一些操作(转)
- Yii2.0数据库操作增删改查详解
- yii 2.0 增删改查 分页 ajax 批删
- EasyUI 分页控制操作
- Android 2.0中电话本contact的读写操作(增删改查一)
- YII数据库增删查改操作
- Yii2.0 数据库操作
- Yii2.0 数据库查询操作
- JavaWeb学习记录(七)——MVC操作数据库增删改查与分页功能
- yii2.0 分页(二)
- Magicodes.WeiChat——ASP.NET Scaffolding生成增删改查、分页、搜索、删除确认、批量操作、批量删除等业务代码
- yii2.0 rbac权限操作
- Java操作Hbase增删改查(附带复合条件查询以及分页查询)
- Android 2.0中电话本contact的读写操作(增删改查)
- yii2.0数据库操作