首页 > 作文

ThinkPHP5&5.1框架关联模型分页操作示例

更新时间:2023-04-07 14:08:33 阅读: 评论:0

本文实例讲述了thinkphp5&5.1框架关联模型分页操作。分享给大家供大家参考,具体如下:

利用数据库的分页通常比较简单,但在实际项目中,我们往往需要处理复杂的数据,例如多表操作,这时候我们就需要利用模型层的关联操作得到最终想要的数据,而这些数据我们其实也是可以利用thinkphp5&5.1内置的分页引擎进行分页的。

卖的车辆我们称之为车源,车源和车主之间是多对一关系(车主可以有多辆车,一辆车只属于一个车主);车源和车辆图片之间是一对多关系(一辆车有多个图片,一个图片只属于一辆车);车辆还有自定义属性,它们之间是多对多关系,车辆的级别在车源表是个数字,具体名称需要到级别表获取。。。。可以看出,这块是非常复杂的,完全使用数据库操作会非常复杂,所以我们选择使用模型层进行处理。

首先建立模型之间的关系:

public function lfattribute(){  return $this->belongstomany("lfattribute",'cars_lfattribute','lfattribute_id','cars_id');}public function carsimg(){  return $this->hasmany('carsimg');}public function member(){  return $this->belongsto('\app\index\model\member');}

同时对应的模型也要建立对应的方法。

在控制器层写方法:

public function lst(){  $cars_model = model("cars");  $cars_list = $cars_model->getcarslist();  $this->assign("cars_list",$cars_list);  // dump($cars_list);  return view();}

其中getcarslist()方法在模型层中实现:

  public function getcarslist()  {    $cars_list = cars::paginate(2)->each(function($value,$key){      $level_find = db("level")->where('id',$value['level'])->value('name');      $value['level_name'] = $level_find;      $value->carsimg;      $value->member;      $value->lfattribute;    });    return $cars_list;  }

模板上写法同普通分页:

<div class="ibox-content">  <table class="table table-bordered">    <thead>      <tr>        <t家访情况记录h>id</th>        <th>名称</th>        <th>车主</th>        <th>状态</th>        <th>操作</th>      </tr>    </thead>    <tbody>    {volist name="cars_list" id="vo"}      <tr>        <td>{$vo.id}</td>        <td><a href="{:url('index/cars/carsdetails',array('id'=>$vo.id))}" rel="external nofoll台湾的大学排名ow" >{$vo.full_name}</a></td>        <td>{$vo.member.member_name}</td>        <td>        {switch $vo.status}        {ca 1}上架{/ca}        {ca 0}下架{/ca}        {ca -1}已售{/ca}        {default /}未审核        {/sw药店营业员itch}        </td>        <td>          <div class="btn-group open">            <button data-toggle="dropdown" class="btn btn-primary dropdown-toggle" aria-expanded="true">操作 <span class="caret"></span>            </button>            <ul class="dropdown-menu">              <li><a href="">修改</a>              </li>              <li><a href="">删除</a>              </li>            &l卡卡西的真面目t;/ul>          </div>        </td>      </tr>    {/volist}    </tbody>  </ta水煮荷包蛋的做法ble>  {$cars_list|raw}</div>

本文发布于:2023-04-07 14:08:31,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/62635b3d2f7a2f1b92d9d828342d8ffe.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:ThinkPHP5&5.1框架关联模型分页操作示例.doc

本文 PDF 下载地址:ThinkPHP5&5.1框架关联模型分页操作示例.pdf

标签:分页   模型   操作   车主
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图