日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Yii的页面小部件

發布時間:2024/9/19 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Yii的页面小部件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

區別

?DetailView?小部件能夠用于顯示一條記錄數據

ListView?和?GridView?小部件能夠用于顯示一個擁有分頁、 排序和過濾功能的一個列表或者表格

格式化

默認格式化時間

更多的格式化

自定義格式化

匿名函數格式化

圖片展示

['attribute' => 'image','format' => ['image',['width'=>'100','height'=>'100']],'value' => function ($data) {return $data->image;} ],

鏈接

['attribute' => 'title','value' => function ($model, $key, $index, $column) {return Html::a($model->title, ['article/view', 'id' => $key]);},'format' => 'raw', ],

數據枚舉

['attribute' => 'sex', 'value'=>function ($model,$key,$index,$column){return $model->sex==1?'男':'女'; },//在搜索條件(過濾條件)中使用下拉框來搜索'filter' => ['1'=>'男','0'=>'女'],//or'filter' => Html::activeDropDownList($searchModel,'sex',['1'=>'男','0'=>'女'],['prompt'=>'全部']) ],['label'=>'產品狀態', 'attribute' => 'pro_name', 'value' => function ($model) {$state = ['0' => '未發貨','1' => '已發貨','9' => '退貨,已處理',];return $state[$model->pro_name];},'headerOptions' => ['width' => '120'] ]

代碼展示

主要有一個數據提供者? 一個過濾數據? 一個表格部分(列數據/動作列)

GridView::widget([ // 你傳過來的ActiveDataProvider 'dataProvider' => $dataProvider, //過濾 'filterModel' => $searchModel, //以下就是表格部分了 'columns' => [// 第一列:排序['class' => 'yii\grid\SerialColumn'],// 第二列:sid,與你查詢的model字段相對應,可以少,不可以多'sid',//第三列:姓名sname['attribute' => 'sname',// 自定義列名'label'=>'姓名',],// 更復雜的列數據['class' => 'yii\grid\DataColumn', //由于是默認類型樣式,可以省略//采用匿名函數方式 'value' => function ($data) {return $data->name; // 如果是數組數據則為 $data['name'] ,例如,使用 SqlDataProvider 的情形。},],// 動作列,默認三個動作,分別為{view},{update},{delete}['class' => 'yii\grid\ActionColumn',// 列名'header' => '操作',// 定義這一列里面有幾個操作,這里為查看,更新,刪除'template' => '{stuent-view} {studnet-update} {student-delete}',// 為你template中聲明的操作聲明動作'buttons' => [// 對應{student-view},三個參數,最主要的$key,為你model主鍵的id'stuent-view' => function ($url, $models, $key) {// 為下面a鏈接的url,此處指向StudentController的actionView方法$url = ['student/view', 'id'=>$key];$options = ['title' => '查看','aria-label' => '查看','data-pjax' => '0',];return Html::a('<span class="glyphicon glyphicon-eye-open"></span>', $url, $options);}]], ], ]);

DetailView

定義

?

DetailView小部件通常用來顯示的是一條記錄的詳情。

  • 一個Model模型類對象。
  • 一個AR類的實例對象。
  • 由鍵值對構成的一個關聯數組。

一個典型的DetailView的使用方法如下:

<?= DetailView::widget(['model' => $model,'attributes' => ['id','content:ntext',['attribute'=>'status''value'=>$model->status0->name]'create_time:datetime','update_time:datetime',],]) ?>

屬性

代碼

options格式:'options' => ['class' => 'table table-striped table-bordered detail-view']template格式:'template' => '<tr><th{captionOptions}>{label}</th><td{contentOptions}>{value}</td></tr>'

?

總結

以上是生活随笔為你收集整理的Yii的页面小部件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。