2016-10-12 9 views
0

ui_component magento2를 사용하여 그리드에서 massactions를 구현하는 방법. 내 ui_component를 만들고 massaction을 구현해야합니다. 필요한 경로에 대한 컨트롤러도 만들었습니다. 그러나 어쨌든 그것은 단지 작동하지 않습니다.ui_component magento2를 사용하여 그리드에서 massaction을 구현하십시오.

Vendor/Module/Controller/Adminhtml/Index/Massaccept.php Vendor/Module/Controller/Adminhtml/Index/Massreject.php

질량 행동이 그리드에 볼 수 있지만 어디 리디렉션되지 않습니다

<massaction name="listing_massaction"> 
    <argument name="data" xsi:type="array"> 
     <item name="config" xsi:type="array"> 
      <item name="selectProvider" xsi:type="string">test_grid.test_grid.test_grid_columns.ids</item> 
      <item name="component" xsi:type="string">Magento_Ui/js/grid/tree-massactions</item> 
      <item name="indexField" xsi:type="string">entity_id</item> 
     </item> 
    </argument> 
    <action name="reject"> 
     <argument name="data" xsi:type="array"> 
      <item name="config" xsi:type="array"> 
       <item name="type" xsi:type="string">rejected</item> 
       <item name="label" xsi:type="string" translate="true">Reject</item> 
       <item name="url" xsi:type="url" path="*/*/MassDelete"><item/> 
       <item name="confirm" xsi:type="array"> 
        <item name="title" xsi:type="string" translate="true">Reject items</item> 
        <item name="message" xsi:type="string" translate="true">Are you sure to reject selected Requests?</item> 
       </item> 
      </item> 
     </argument> 
    </action> 
    <action name="accept"> 
     <argument name="data" xsi:type="array"> 
      <item name="config" xsi:type="array"> 
       <item name="type" xsi:type="string">accepted</item> 
       <item name="label" xsi:type="string" translate="true">Accept</item> 
       <item name="url" xsi:type="string">test/Index/Massaccept</item>       
      </item> 
     </argument> 
    </action> 
</massaction> 

내 컨트롤러

ui_component/test_grid.xml

경로에 있습니다.

답변

3

업데이트 코드를

<massaction name="listing_massaction"> 
    <argument name="data" xsi:type="array"> 
     <item name="config" xsi:type="array"> 
      <item name="selectProvider" xsi:type="string">test_grid.test_grid.test_grid_columns.ids</item> 
      <item name="component" xsi:type="string">Magento_Ui/js/grid/tree-massactions</item> 
      <item name="indexField" xsi:type="string">entity_id</item> 
     </item> 
    </argument> 
    <action name="reject"> 
     <argument name="data" xsi:type="array"> 
      <item name="config" xsi:type="array"> 
       <item name="type" xsi:type="string">rejected</item> 
       <item name="label" xsi:type="string" translate="true">Reject</item> 
       <item name="url" xsi:type="url" path="*/*/MassReject"><item/> 
       <item name="confirm" xsi:type="array"> 
        <item name="title" xsi:type="string" translate="true">Reject items</item> 
        <item name="message" xsi:type="string" translate="true">Are you sure to reject selected Requests?</item> 
       </item> 
      </item> 
     </argument> 
    </action> 
    <action name="accept"> 
     <argument name="data" xsi:type="array"> 
      <item name="config" xsi:type="array"> 
       <item name="type" xsi:type="string">Accept</item> 
       <item name="label" xsi:type="string" translate="true">Accept</item> 
       <item name="url" xsi:type="url" path="*/*/MassAccept"><item/> 
       <item name="confirm" xsi:type="array"> 
        <item name="title" xsi:type="string" translate="true">Accept items</item> 
        <item name="message" xsi:type="string" translate="true">Are you sure to Accept selected Requests?</item> 
       </item> 
      </item> 
     </argument> 
    </action> 
</massaction> 
아래와 같이