Main > Magento > Как передать параметры фильтрации в grid админке через url в Magento

Как передать параметры фильтрации в grid админке через url в Magento

05.01.2015 0 comments » Views: 770

Magento 2

Для того чтобы передать значения параметра фильтра в админке magento, его необходимо правильно сформировать..

Перейдите на страницу содержащую грид, введите значение в поле фильтра, и нажмите [Search]. Теперь обратите внимание на url, он будет вида:

http://site.com/index.php/back-office/device/index/filter/ZHVlX2RhdGUlNUJsb2NhbGUlNUQ9ZW5fVVMmbGFzdF9kdWVfZGF0ZSU1QnRvJTVEPWFiYyZsYXN0X2R1ZV9kYXRlJTVCbG9jYWxlJTVEPWVuX1VT/form_key/XCvgOe14snFgYPg6/

Обратите внимание на выделенную часть. Тут наши параметры и есть. Для того, чтобы расшифровать их, скопируйте эту часть:

ZHVlX2RhdGUlNUJsb2NhbGUlNUQ9ZW5fVVMmbGFzdF9kdWVfZGF0ZSU1QnRvJTVEPWFiYyZsYXN0X2R1ZV9kYXRlJTVCbG9jYWxlJTVEPWVuX1VT

и обработайте её с помощью функции base64_decode, так же можете сделать это на сайте: https://www.base64decode.org

в результате мы получаем вот такие данные:

due_date%5Blocale%5D=en_US&last_due_date%5Bto%5D=abc&last_due_date%5Blocale%5D=en_US

как видите, уже лучше, осталось применить функцию urldecode, так же это можно сделать на этом сайте: http://www.url-encode-decode.com

в итоге получаем параметры:

due_date[locale]=en_US&last_due_date[to]=abc&last_due_date[locale]=en_US

или для удобства так:

due_date[locale]=en_US &
last_due_date[to]=abc &
last_due_date[locale]=en_US

собственно, теперь уже понятно – чтобы отправить данные в фильтр, нам надо указать само поле и локаль, после чего выполнить обратные операции.

Например, мы можем сформировать ссылку в темплейте, вот так:

Вот и все на сегодня

Author: | Rating: 4/5 | Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *

Allowed HTML-tags: <a>, <code>, <i>, <em>, <strong>, <b>, <u>, <strike>