Magento 2: Làm cách nào để ẩn một cột khỏi lưới quản trị?


Câu trả lời:


3

Bạn có thể thử với <item name="componentDisabled" xsi:type="boolean">true</item>

Ví dụ:

Vendor/Module/view/adminhtml/ui_component/product_form.xml

<field name="backorders">
    <argument name="data" xsi:type="array">
            <item name="config" xsi:type="array">
                <item name="componentDisabled" xsi:type="boolean">true</item>
            </item>
    </argument>
</field>

Cảm ơn @Khoa, nhưng tôi muốn hiển thị cột tùy thuộc vào quyền của người dùng, vì vậy tôi muốn cột ở đó, nhưng để bắt đầu ẩn.
dbcn

3

sử dụng <item name="visible" xsi:type="boolean">false</item> trong nút cấu hình của đối số dữ liệu khi khai báo cột

ví dụ.

<column name="created_at">
    <argument name="data" xsi:type="array">
        <item name="config" xsi:type="array">
            <item name="resizeEnabled" xsi:type="boolean">false</item>
            <item name="filter" xsi:type="string">dateRange</item>
            <item name="sorting" xsi:type="string">desc</item>
            <item name="label" xsi:type="string" translate="true">Created at</item>
            <item name="sortOrder" xsi:type="number">120</item>
            <item name="visible" xsi:type="boolean">false</item>
        </item>
    </argument>
</column>

vấn đề duy nhất mà bộ lọc sẽ không hiển thị cho đến khi bạn chuyển cột trở lại hiển thị


Cảm ơn @Mammouth, nhưng nó trông giống như một cài đặt cấu hình - Tôi muốn có thể thay đổi mức độ hiển thị dựa trên vai trò của người dùng, vì vậy nó sẽ phải kiểm tra mã đó.
dbcn

acl không được tạo ra cho điều này ... nhưng để bắt chước một cái gì đó tương tự chỉ cần mở rộng / ghi đè Magento_Ui/view/base/web/js/grid/columns/column.jsvới logic kinh doanh của bạn
Mammouth

Tuy nhiên, tôi nghĩ sẽ tốt khi mở một chủ đề mới cho vấn đề hiện tại của bạn (ẩn cột bằng cài đặt vai trò người dùng), vì vấn đề này đã được giải quyết
Mammouth

@Mammouth, Nhưng bộ lọc sẽ hiển thị, chỉ chúng ta có thể ẩn khỏi cột?
jafar pinjar

1

Thêm mã dưới đây vào ui xml của bạn để xóa cột

<column name="name_of_column">
          <argument name="data" xsi:type="array">
               <item name="config" xsi:type="array">
               <item name="componentDisabled" xsi:type="boolean">true</item>
           </item>
      </argument>
</column>
<field name="name_of_column">
          <argument name="data" xsi:type="array">
               <item name="config" xsi:type="array">
               <item name="componentDisabled" xsi:type="boolean">true</item>
           </item>
      </argument>
</field>
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.