热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[moka同学笔记]yii2.0数据库操作以及分页

1.model中modelsarticle.php1

1.model中models/article.php

1 2
3 namespace app\models;
4
5 use Yii;
6
7 /**
8 * This is the model class for table "yii2_article".
9 *
10 * @property string $id
11 * @property integer $category_id
12 * @property string $title
13 * @property string $image
14 * @property string $content
15 * @property string $create_at
16 * @property string $updata_at
17 */
18 class Article extends \yii\db\ActiveRecord
19 {
20 /**
21 * @inheritdoc
22 */
23 public static function tableName() 24 { 25 return 'yii2_article'; 26 } 27 28 /** 29 * @inheritdoc 30 */ 31 public function rules() 32 { 33 return [ 34 [['category_id'], 'integer'], 35 [['desc','content'], 'string'], 36 [['create_at', 'updata_at'], 'safe'], 37 [['title'], 'string', 'max' => 50], 38 [['image'], 'string', 'max' => 100] 39 ]; 40 } 41 42 /** 43 * @inheritdoc 44 */ 45 public function attributeLabels() 46 { 47 return [ 48 'id' => 'ID', 49 'category_id' => '栏目', 50 'title' => '标题', 51 'desc' => '描述', 52 'image' => '封面图片', 53 'content' => '内容', 54 'create_at' => '创建日期', 55 'updata_at' => '修改日期', 56 ]; 57 } 58 59 //根据文章查询栏目的信息,hasOne()因为一个文章只属于一个栏目,一比一的方法 60 public function getArticleCategory(){ 61 return $this->hasOne(ArticleCategory::className(),['id'=>'category_id']); 62 } 63 }

 

2.控制器中ArticleController.php

1 2
3 namespace app\controllers;
4
5 use Yii;
6 use app\models\Article;
7 use yii\data\ActiveDataProvider;
8 use yii\db\Query;
9 use yii\web\Controller;
10 use yii\web\NotFoundHttpException;
11 use yii\data\Pagination;
12 class ArticleController extends Controller
13 { //public $layout="main";
14 public function actionIndex()
15 {
16 $article = Article::find();
17 $articleCount = clone $article;
18
19 $pageSize = 5;
20
21 $pages =new Pagination([
22 'totalCount'=>$articleCount->count(),
23 'pageSize'=>$pageSize
24 ]) ;
25
26 $models = $article->offset($pages->offset)
27 ->limit($pages->limit)
28 ->orderBy('id DESC')
29 ->all();
30
31 return $this->render('index',[
32 'models'=>$models,
33 'pages'=>$pages
34 ]);
35 }
36 }

3.视图中view/article/index.php

1 2 /**
3 * Created by PhpStorm.
4 * User: moka同学
5 * Date: 2016/07/22
6 * Time: 11:13
7 */
8 use yii\widgets\LinkPager;
9 use \yii\helpers\Url;
10 ?>
11 12 foreach ($models as $model) {
13 ?>
14


15


16 $model->id]);?>" class="not-set">title ?>
17


18
19


20 create_at ?>
21


22

23 image) ? "
image' style='width: 120px;height: 120px;margin-right: 10px;vertical-align: text-top '>
" : ""; ?>
24
content,0,400,'utf-8').'……' ?>$model->id]);?>">查看详情

25

26

27
28

29 30 'pagination' => $pages,
31 'options' => [
32 'class' => 'pagination',
33 ]
34 ]) ?>
35

 

这个是很基础的model使用,如有不对,请联系我。QQ1727728211

 



推荐阅读
  • 从零学Java(10)之方法详解,喷打野你真的没我6!
    本文介绍了从零学Java系列中的第10篇文章,详解了Java中的方法。同时讨论了打野过程中喷打野的影响,以及金色打野刀对经济的增加和线上队友经济的影响。指出喷打野会导致线上经济的消减和影响队伍的团结。 ... [详细]
  • 在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板
    本文介绍了在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板的方法和步骤,包括将ResourceDictionary添加到页面中以及在ResourceDictionary中实现模板的构建。通过本文的阅读,读者可以了解到在Xamarin XAML语言中构建控件模板的具体操作步骤和语法形式。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • 展开全部下面的代码是创建一个立方体Thisexamplescreatesanddisplaysasimplebox.#Thefirstlineloadstheinit_disp ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • Go GUIlxn/walk 学习3.菜单栏和工具栏的具体实现
    本文介绍了使用Go语言的GUI库lxn/walk实现菜单栏和工具栏的具体方法,包括消息窗口的产生、文件放置动作响应和提示框的应用。部分代码来自上一篇博客和lxn/walk官方示例。文章提供了学习GUI开发的实际案例和代码示例。 ... [详细]
  • 开发笔记:Java是如何读取和写入浏览器Cookies的
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Java是如何读取和写入浏览器Cookies的相关的知识,希望对你有一定的参考价值。首先我 ... [详细]
  • 在springmvc框架中,前台ajax调用方法,对图片批量下载,如何弹出提示保存位置选框?Controller方法 ... [详细]
  • 本文讨论了如何在codeigniter中识别来自angularjs的请求,并提供了两种方法的代码示例。作者尝试了$this->input->is_ajax_request()和自定义函数is_ajax(),但都没有成功。最后,作者展示了一个ajax请求的示例代码。 ... [详细]
  • ScrollView嵌套Collectionview无痕衔接四向滚动,支持自定义TitleView
    本文介绍了如何实现ScrollView嵌套Collectionview无痕衔接四向滚动,并支持自定义TitleView。通过使用MainScrollView作为最底层,headView作为上部分,TitleView作为中间部分,Collectionview作为下面部分,实现了滚动效果。同时还介绍了使用runtime拦截_notifyDidScroll方法来实现滚动代理的方法。具体实现代码可以在github地址中找到。 ... [详细]
  • React项目中运用React技巧解决实际问题的总结
    本文总结了在React项目中如何运用React技巧解决一些实际问题,包括取消请求和页面卸载的关联,利用useEffect和AbortController等技术实现请求的取消。文章中的代码是简化后的例子,但思想是相通的。 ... [详细]
  • 本文介绍了如何使用elementui分页组件进行分页功能的改写,只需一行代码即可调用。通过封装分页组件,避免在每个页面都写跳转请求的重复代码。详细的代码示例和使用方法在正文中给出。 ... [详细]
author-avatar
林筱杏-HA
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有