分类
laravel php web

laravel render()使用

在 Laravel 框架中,render() 方法通常用于视图的渲染。

它允许您将数据传递到视图模板,并生成最终的输出响应。

在控制器中

public function index(Content $content){
    return $content
            ->header('工作人员绩效管理')
            ->description('详细页')
            ->body($this->render());
       }
public function list(){
    $worker_id = DB::table('tm_worker')->select('userid')->get()->toArray();
    $json =[];
    foreach ($worker_id as $v)
    {
        $list_name=DB::table('tm_worker')->select('username')->where('userid',$v->userid)->first()->username;
        $list_count=DB::table('tm_evaluate')->where('workid',$v->userid)->count();
        if($list_count != 0) {
            $list_score = DB::table('tm_evaluate')->where('workid', $v->userid)->sum('score') / $list_count;
        }else
        $list_score = 0;

       $json[] = [
            '名称' => $list_name,
            '完成数量' => $list_count,
            '平均评价' => $list_score,
        ];
    }
    return Table::make(['名称', '完成数量', '平均评价'], $json);
}
protected function render(){
        return <<<HTML
&nbsp;&nbsp;
&nbsp;
<div class="table-responsive" style="margin-top: 20px; color: #0a6aa1 border:1px solid #e5e9f2;border-radius: 5px;padding: 10px;background-color: #fff;box-shadow: 0 1px 2px 0 rgba(0,0,0,.05);"">  //设置样式
{$this->list()
</div>
}
HTML;
    }

以上代码实现把list()函数得到的列表数据通过渲染表现在页面上