[英]Joomla Search Bar not loading userstate
我正在組件中實現Joomla搜索欄。 但是由於某些原因,它沒有加載userState,因此下拉菜單不起作用。 過濾器工作正常。
XML形式:
<?xml version="1.0" encoding="utf-8"?>
<form>
<fields name="filter">
<field
name="filter_search"
type="text"
label="COM_BANNERS_SEARCH_IN_TITLE"
hint="JSEARCH_FILTER"
class="js-stools-search-string"
/>
</fields>
<fields name="list">
<field name="type" default="0" type="list" onchange="this.form.submit();" label="COM_RDAUTOS_CATEGORY_TYPE">
<option value="0">COM_RAUTOS_PLS_SELECT</option>
<option value="1">COM_RDAUTOS_VEHICLES</option>
<option value="2">COM_RDAUTOS_PARTS</option>
</field>
<field name="state" default="0" type="list" onchange="this.form.submit();" label="COM_RAUTOS_PLS_SELECT">
<option value="0">COM_RAUTOS_PLS_SELECT</option>
<option value="1">COM_RAUTOS_UNPUBLISHED</option>
<option value="2">COM_RAUTOS_PUBLISHED</option>
</field>
</fields>
</form>
我已經將此添加到我的view.html.php文件中:
// Joomla Core functionality for filtering
$this->state = $this->get('State');
$this->filterForm = $this->get('FilterForm');
$this->activeFilters = $this->get('ActiveFilters');
我已將此添加到模型中:
function __construct($config = [])
{
if (empty($config['filter_fields']))
{
$config['filter_fields'] = [
'state',
'type',
];
}
parent::__construct($config);
}
這用於請求變量:
$state = $this->getState('list.state');
$type = $this->getState('list.type');
$search = $this->getState('filter.filter_search');
如default.php
echo JLayoutHelper::render('joomla.searchtools.default', ['view' => $this]);
在搜索工具欄中選擇一個值后,它會進行過濾並且一切正常,但是未在選擇框中選擇所選值。 因此,我們不知道已過濾了什么。
任何可能知道解決方案的人?
這里的問題是您的過濾器字段的state
名稱。 該模型已經有一個名為state
的變量。 我想如果你將名稱更改狀態別的東西一樣status
的東西如預期應該工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.