Я создал один пользовательский модуль с атрибутом title & status field в сетке администратора.
Сетки коллекций в module_test_grid_block.xml
<arguments>
<argument name="id" xsi:type="string">testGrid</argument>
<argument name="dataSource" xsi:type="object">Namespace\Module\Model\ResourceModel\test\Collection</argument>
<argument name="default_sort" xsi:type="string">id</argument>
<argument name="default_dir" xsi:type="string">desc</argument>
<argument name="grid_url" xsi:type="url" path="*/*/grid"><param name="_current">1</param></argument>
</arguments>
Я хочу показать данные, которые включены. Есть ли возможность добавить фильтр по умолчанию в коллекции сетки администратора ?
РЕДАКТИРОВАТЬ
<block class="Namespace\Module\Block\Adminhtml\Test\Grid" name="namespace_module_test.grid" as="grid">
<arguments>
<argument name="id" xsi:type="string">testGrid</argument>
<argument name="dataSource" xsi:type="object">Namespace\Module\Model\ResourceModel\test\Collection</argument>
<argument name="default_sort" xsi:type="string">id</argument>
<argument name="default_dir" xsi:type="string">desc</argument>
<argument name="grid_url" xsi:type="url" path="*/*/grid"><param name="_current">1</param></argument>
<argument name="default_filter" xsi:type="array">
<item name="status" xsi:type="string">1</item>
</argument>
</arguments>
.
.
</block>
В блоке - Grid.php
namespace Namespace\Module\Block\Adminhtml\Test;
use Magento\Backend\Block\Widget\Grid as WidgetGrid;
class Grid extends WidgetGrid
{
public function _construct()
{
parent::_construct();
if ($this->hasData('default_filter')) {
// print_r($this->getData('default_filter'));die;
$this->setDefaultFilter($this->getData('default_filter'));
}
}
}
Я перешел по этой ссылке, чтобы создать сетку администратора в magento 2
http://www.mage-world.com/blog/grid-and-form-in-magento-2-admin-panel-part-1.html
admin
magento2
collection
grid
DRAJI
источник
источник
Вам нужно добавить это внутри тега arguments:
если ваши аргументы содержатся в этом блоке
вам нужно создать свой собственный класс, который расширяется
Magento\Backend\Block\Widget\Grid
так:и измените тег блока выше
если вы уже используете пользовательскую сетку, а не по умолчанию,
Magento\Backend\Block\Widget\Grid
вам не нужно создавать класс.Вам просто нужно скопировать
_construct
метод сверху в вашем классе.источник
вот ссылка на devdocs:
http://devdocs.magento.com/guides/v2.0/ui-components/ui-secondary-filter.html
Если вам нужна дополнительная информация по этому вопросу - вы можете создать запрос на удаление или проблему через страницу документов - просто нажмите ссылку «Изменить эту страницу на GitHub». Документы постоянно обновляются и улучшаются.
источник
Magento\Backend\Block\Widget\Grid
. Но я могу ошибаться.Попробовав множество кодов, которые не работают, наконец, найдите способ, который не требует кодирования - используйте функцию сохранения пользовательских представлений, которая может сохранять настройки фильтра и столбцов.
Конкретные шаги
После настройки фильтра и параметров столбца, нажмите на Default Viewкнопку со значком глаза, затем нажмите, Save View As…чтобы ввести имя для вашего вида. Затем вы можете щелкнуть пользовательский вид в любое время, чтобы получить сетку, как вам нравится, и вы можете сохранить пользовательский вид столько раз, сколько захотите.
Вы также можете вернуться назад и использовать значок редактирования, чтобы переименовать или удалить его позже, или чтобы вернуться к виду по умолчанию.
Я думаю, что это очень хорошая функция в Magento 2 :)
источник