为什么统计图上不显示数据_laravel入门:与数据库交互并显示在页面上

字数:1920

作者:wookcool

阅读预计4分钟

之前介绍过自定义页面并实现跳转,但那都是静态的,没有与数据库进行任何信息交换。Laravel 内置的 Eloquent ORM为我们操作数据库提供了很大方便,要与数据库进行交互大致为以下流程:

一、建立模型

可以认为模型是数据库表的抽象。

运行命令:php artisan make:model Models/youxian,即可创建一个模型类

3da1adf7da62f9dc9a7570228390dbe1.png

创建一个模型类

补充:

1、要使用先前已经存在的数据库表 baojie_tuidan_baojie_tuidans ,必须指定:protected $table = 'baojie_tuidan_baojie_tuidans';

2、Eloquent 默认表的主键为 id,你可以在模型类中定义一个 $primaryKey 来自定义;

3、Eloquent 默认 created_at 和 updated_at 已经存在于表中,如果不想 Laravel 自动管理“创建时间”、“修改时间”,在模型类中设置 $timestamps 属性为 false;

da33d5a0aae4d61f9350b40946f88edb.png

先前已经存在的数据库表

二、与数据库进行交互

之前的文章里创建了视图控制器(viewsController.php)来指向(return view....)需要显示的页面。这里我直接在视图控制器里面写。

首先 use AppModelsyouxian; 引用模型

eb09661351fbed8f1fb7f0ece781a2f9.png

在return view之前,查询数据( $gongdanhao 这些都是查询的参数):

$results=youxian::where('Work_order_no','like',"%{$gongdanhao}%")            ->whereIn('Action_type',$actionType)            ->where('Channel_name','like','%'.$channel.'%')            ->where('The_theme','like','%'.$zhuti.'%')            ->whereIn('Business_types',$yewu)            ->where('The_user_account','like','%'.$zhanghao.'%')            ->where('To_accept_the_person','like','%'.$createGongdanPeople.'%')            ->whereIn('The_construction_way',$jianshe)            ->where('note','like','%'.$GongdanBeizhu.'%')            ->whereIn('county',$county)            ->where($theTime)            ->select('The_theme', 'To_accept_the_person',                     'Channel_name','Business_types',                    'The_construction_way','note',                    'The_repair_order_at_time','The_single_time',                    'The_construction_notes','USERID','USERID_password',                    'Associated_broadband_account','With_d_team','Installed_staff_name'                    )            ->orderby('The_repair_ord                     er_at_time','desc')            ->get();
16dc81aed5d516b8e53768bd7ab8e00f.png

ORM查询方式

补充:whereIn('county',$county),$county 其实是一个数组,类似 [ ['地区1'] ,['地区2'] ......]

如果ORM查询方式无法满足需求,还可以执行原生SQL语句:

feac3e919bdb8833d9e63fc050168068.png

无论哪一种查询,查询结果记得放到return view 里面给页面解析

三、页面上显示查询的结果

其实就是通过模板变量来解析查询结果,有关模板变量的用法请参考官方或其他教程

报结记录

总数:{{ $youxian_count }}
@isset($youxian_baojieTime_array) 日期范围:
@foreach($youxian_baojieTime_array as $youxian_baojieTime_array_i) {{ $youxian_baojieTime_array_i->日期 }} @endforeach @endisset
edb740fcba813d0fa5be2a9463e4c646.png

模板变量解析查询结果

b3052be4c38c1b7b977cf14e694766b0.png

页面显示效果

从数据库中删除、修改、添加与查询相差无几,请参考官方或其他教程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值