Sorting yii2带下拉列表的排序
我在listview yii2中排序有问题。我不知道如何创建下拉列表,并以单独的筛选形式进行排序 在模型中,我有:Sorting yii2带下拉列表的排序,sorting,yii2,dropdown,Sorting,Yii2,Dropdown,我在listview yii2中排序有问题。我不知道如何创建下拉列表,并以单独的筛选形式进行排序 在模型中,我有: $dataProvider->sort->attributes['sort'] = [ 'asc' => ['game.rating' => SORT_ASC], 'desc' => ['game.rating' => SORT_DESC], ]; 但是如何创建下拉列表呢 型号:
$dataProvider->sort->attributes['sort'] = [
'asc' => ['game.rating' => SORT_ASC],
'desc' => ['game.rating' => SORT_DESC],
];
但是如何创建下拉列表呢
型号:
class GameSearch extends Offer
{
public $status;
public $title;
public $type;
public $platform;
public $rating;
public $pageSize;
public $sort;
public function rules()
{
return [
[['status', 'platform', 'pageSize'], 'integer'],
[['title', 'type', 'sort', 'rating'], 'string']
];
}
public function search($params, $query)
{
$query->joinWith(['game', 'author']);
$dataProvider = new ActiveDataProvider([
'query' => $query,
'sort' => ['defaultOrder' => ['created_at' => SORT_DESC]],
'pagination' => [
'pageSize' => $this->pageSize,
],
]);
$dataProvider->sort->attributes['sort'] = [
'asc' => ['game.rating' => SORT_ASC],
'desc' => ['game.rating' => SORT_DESC],
];
if (!($this->load($params) && $this->validate())) {
return $dataProvider;
}
$dataProvider->pagination->pageSize = $this->pageSize;
$query->andFilterWhere(['like', 'game.title', $this->title])
->andFilterWhere(['like', 'platform', $this->platform]);
return $dataProvider;
}
}
和我的搜索文件
<?= $form->field($model, 'sort')
->dropDownList([
'rating' => 'rating ASC',
'-rating' => 'rating DESC',
])
->label(false)
->error(false);
?>
我有同样的问题,这是我的配置 看法值1为sort ASC,值2为sort DESC
<?= $form->field($model, 'sort')
->dropDownList([
'1' => 'rating ASC',
'2' => 'rating DESC',
],['id' =>'find-rating1'])
->label(false)
->error(false);
?>
使用$ratingValue,您可以自定义搜索查询我也有同样的问题,这是我的配置 看法值1为sort ASC,值2为sort DESC
<?= $form->field($model, 'sort')
->dropDownList([
'1' => 'rating ASC',
'2' => 'rating DESC',
],['id' =>'find-rating1'])
->label(false)
->error(false);
?>
使用$ratingValue,您可以定制您的搜索查询稍微晚一点,但我在搜索类似问题时发现了这篇文章,并且 希望我最后所做的能帮助别人 将引导类添加到ListView分类器
。此外,在列表中设置您想要的任何属性,或者如果您想要查看所有内容,则将该部分省略
'sorter' => [
'options' => [
'class' => 'dropdown-menu'
],
'attributes' => [
'id', 'name'
]
],
然后用layout
将其包装在引导程序下拉标签的其余部分中。本例将分拣机
置于项目
、寻呼机
和摘要
之上
'layout' => '
<div class="dropdown">
<button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown">
Sort <span class="caret"></span>
</button>
{sorter}
</div>
{items}{pager}{summary}
',
'layout'=>'
分类
{分拣机}
{items}{pager}{summary}
',
那就走开 有点晚了,但我在搜索类似问题时发现了这篇文章,并且 希望我最后所做的能帮助别人 将引导类添加到ListView分类器
。此外,在列表中设置您想要的任何属性,或者如果您想要查看所有内容,则将该部分省略
'sorter' => [
'options' => [
'class' => 'dropdown-menu'
],
'attributes' => [
'id', 'name'
]
],
然后用layout
将其包装在引导程序下拉标签的其余部分中。本例将分拣机
置于项目
、寻呼机
和摘要
之上
'layout' => '
<div class="dropdown">
<button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown">
Sort <span class="caret"></span>
</button>
{sorter}
</div>
{items}{pager}{summary}
',
'layout'=>'
分类
{分拣机}
{items}{pager}{summary}
',
那就走开 区域中的演示url区域中的演示url