批改状态:未批改
老师批语:
{load href="/static/bootstrap/css/bootstrap.css"}
<div class="container">
<div class="row">
<h2 class="text-center">公司人员工资管理信息表</h2>
<div class="col-md-8 col-md-offset-2">
<table class="table table-bordered text-center table-hover">
<tr class="info">
<td>ID</td>
<td>姓名</td>
<td>性别</td>
<td>年龄</td>
<td>工资</td>
</tr>
<!-- {//一、foreach循环标签:类似于原生的foreach语句}
{//1.基本用法: $staff是控制器或模板中的变量,$key与$value可自定义}
{foreach $staff as $staffs}
{//其实模板可以绕过控制器,直接获取数据}
{//2.name值的获取过程可以用助手函数model进行简化,这也是推荐的方式}
{//assign name="staffs" value=":model('staff')::all()" /}
<tr>
<td>{$staffs.staff_id}</td>
<td>{$staffs.name}</td>
<td>{$staffs.sex}</td>
<td>{$staffs.age}</td>
<td>{$staffs.salary}</td>
</tr>
{/foreach} -->
{//二、volist循环标签:使用最广泛,参数众多,功能强大}
{//1.基本用法:name="变量名,与控制器对应不可更改" id="循环变量,可自定义"}
{volist name="staff" id="staffs"}
{//2.扩展用法_1:获取指定范围内的数据:offset="起始位置" length="记录数量"}
{//从索引3开始,获取5条,索引是从0开始计算,其实是从第4条开始输出5条}
{//volist name="staff" id="staffs" offset="3" length="5"}
{//3.扩展用法_2:获取偶数或奇数行的数据: mod="" 将索引进行模除后的结果}
{//volist name="staff" id="staffs" mod="2"}
{/*如果只显示偶数行的数据:模除运算:求余数
例如第4条记录,当前索引为3,除以2,余数为1,说明为偶数行。
那么想获取所有奇数行数据,value应该等于多少? 答案:value="0" */}
{//eq name="mod" value="1"}
<tr>
<td>{$staffs.staff_id}</td>
<td>{$staffs.name}</td>
<td>
{//$staffs.sex}
{in name="staffs.sex" value="0,1"}
{if $staffs.sex == 0}
男
{else /}
女
{/if}
{/in}
</td>
<td>{$staffs.age}</td>
<td>{$staffs.salary}</td>
</tr>
{///eq }
{/volist}
</table>
{$page|raw}
</div>
</div>
</div>
{load href="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"}
{load href="/static/bootstrap/js/bootstrap.js"}<?php
namespace app\index\controller;
use think\Controller;
use app\index\model\Staff as StaffModel;
class Staff extends Controller
{
//循环标签
public function index1()
{
//通过模型获取表中的数据
$staff = StaffModel::all(function($query) {
$query->field(['staff_id','name','sex','age','salary']);
});
//测试:以上数据是否正常获取
// halt($staff);
//给模板赋值 assign('变量名',$staff)
$this->view->assign('staff',$staff);
//渲染模板
return $this->view->fetch();
}
//分页查询
public function index2()
{
//分页配置
$config = [
'type' => 'bootstrap',
'var_page' => 'page'
];
//每页显示的数量
$num = 2;
//是否显示简单分页,只显示:上一页和下一页
$simple = false;
//用模型来获取所有的分页数据:think\paginate
$paginate = StaffModel::paginate($num, $simple, $config);
//渲染分页HTML代码,返回分页变量
$page = $paginate->render();
//将分页数据赋值给模板
$this->view->assign('staff',$paginate);
//将分页变量赋值给模板
$this->view->assign('page',$page);
//渲染模板
return $this->view->fetch();
}
}<?php
namespace app\index\model;
use think\Model; //Model没有Facade
class Staff extends Model
{
protected $table = 'staff'; //表名
protected $pk = 'staff_id'; //主键ID
}点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号