Как условно показать интерфейсную сетку данных oroinc?

У меня есть эта сетка в orocommerce: logistics-agronomist-grid-frontend: extends: logistics-agronomist-grid-base acl_resource: kggroup_logistics_frontend_agronomist_view update: false delete: false source: type: orm query: where: and: - postCode.postCode = :post_code bind_parameters: - post_code columns: agronomistPostCode: manageable: false renderable: false options: frontend: true Мне нужно как-то создать условие, если сетка пуста, отображать все, поэтому мне нужно где, если или что-то query: where: and: - postCode.postCode = :post_code В этом месте я не могу понять, как это сделать

Я попытался найти шаблоны, чтобы создать условия, но сетка отображается где-то в ядре, место, которое я не могу изменить, я пытался написать CASE WHEN '' THEN '' ELSE '' END, но у меня есть ошибки, а IF statments не существует в этот конструктор запросов


person Arturas    schedule 09.09.2019    source источник


Ответы (2)


На витрине OroCommerce все отображается с помощью макетов, включая сетки данных. Таким образом, вы можете использовать макеты, чтобы скрыть сетку. Ознакомьтесь с условиями макета или вы можете установить логическое значение для параметра visible блока, который отображает сетку данных.

person Andrey Yatsenko    schedule 10.09.2019

Я нашел решение, я использовал контроллер, чтобы определить сетку внешнего интерфейса с помощью if else

'agronomistTemplate' => $this->checkUserForPostCodeMatch() ?'logistics-agronomist-grid-frontend' : 'logistics-agronomist-full-grid-frontend'

И в макете сетки:

- '@setOption':
      id: __datagrid
      optionName: grid_name
      optionValue: '=data["agronomistTemplate"]'
person Arturas    schedule 12.09.2019