Логическое значение в строку
Я создал сетку администратора в качестве компонента пользовательского интерфейса.
У меня есть логический столбец под названием статус в бд.
Здесь я показываю значение столбца.
<column name="status">
<settings>
<filter>text</filter>
<sorting>asc</sorting>
<label translate="true">Status</label>
</settings>
</column>
На данный момент он отображает только "1" или "0".
Чего я хочу добиться, так это отобразить "Да" или "Нет" вместо 1 и 0.
1
1 answers
Вам нужно создать массив, чтобы связать значение с меткой : в вашем grid.xml добавить
<column name="status">
<argument name="data" xsi:type="array">
<item name="options" xsi:type="object">Vendor\Module\Ui\Component\Listing\Column\Status</item>
<item name="config" xsi:type="array">
<item name="sortOrder" xsi:type="number">10</item>
<item name="filter" xsi:type="string">select</item>
<item name="label" translate="true" xsi:type="string">Status</item>
<item name="component" xsi:type="string">Magento_Ui/js/grid/columns/select</item>
<item name="dataType" xsi:type="string">select</item>
<item name="editor" xsi:type="string">select</item>
</item>
</argument>
</column>
Затем Теперь Создайте Статус.php в
app/code/Vendor/Module/Ui/Component/Listing/Column/Status.php
<?php
namespace Vendor\Module\Ui\Component\Listing\Column;
class Status implements \Magento\Framework\Option\ArrayInterface
{
/**
* Options getter
*
* @return array
*/
public function toOptionArray()
{
return [['value' => 1, 'label' => __('Yes')], ['value' => 0, 'label' => __('No')]];
}
}
0
Author: Vinz, 2019-03-06 15:03:13