控制器代码
//文章详情页
public function detail()
{
//获取pathinfo的id
$artId = Request::param('id');
//设置pv阅读量的增加
$art = Article::get(function($query) use ($artId){
$query->where('id','=',$artId)->setInc('pv');
});
if(!is_null($art)){
$this->view->assign('art',$art);
}
$this->view->assign('title','详情页');
return $this->view->fetch('detail');
}
前端页面代码
detail.html页面
{include file="public::header"}
{include file="public::nav"}
继承基础模板 采用模板继承方式 代替模板引用方式
{extend name="public/base"}
{block name="body"}
<div class="row">
<div class="col-md-8">
<div class="page-header">
<h2>{$art.category_id|getCateName}</h2>
</div>
<div>
<div>
<h4><a href="{:url('index/detail',['id'=> $art.id])}">{$art.title}</a></h4>
<p>发布者:{$art.user_id|getUserName}
发布时间:{$art.create_time|date='Y-m-d'}
阅读量:{$art.pv}
</p>
<div>{$art.content|getArtContent}</div>
<hr>
</div>
</div>
</div>
{/block}
{include file="public::right"}
{include file="public::footer"}
公共函数
//当函数存在的时候创建该函数
if(!function_exists('getCateName')){
function getCateName($id)
{
return Db::table('zh_article_category')->where('id',$id)->value('name');
}
pathinfo跳转文章详情页所携带的文章id
index.html
<h4><a href="{:url('index/detail',['id'=>$art.id])}">{$art.title}</a></h4>