2017-04-13 8 views
1

Magento 2를 처음 사용합니다. 장바구니 페이지에서 테이블 속도 기능을 사용자 정의하고 있습니다. 최종 운송료 계산에는 연료비, 중량 및 목적지 계산이 포함됩니다.Magento 2의 장바구니 페이지에서 세금 클래스 요금을 가져 오는 방법은 무엇입니까?

현재 코드 내에서 정적 연료 부과금 비용을 사용하여 최종 값을 계산할 수 있습니다. 그러나이 값은 백엔드에서 구성 할 수 있어야합니다.

따라서 fuelLevy를 백엔드에서 세금 클래스로 추가했으며 배송비 계산을 위해 장바구니 페이지에서 가져오고 싶습니다.

테이블 이름은 'mgic_tax_calculation_rate'입니다. 이러한 레코드를 가져 오는 방법 또는 다른 방법이 있습니까?

답변

0

첫째,이 테이블에 대한 모델을 만들 : 공급 업체 \ 모듈 \ 모델 \ MgicTaxCaculationRate.php 공급 업체 \ 모듈 \ 모델 \ 리소스 \ MgicTaxCaculationRate.php

<?php 
/** 
* Copyright © 2015. All rights reserved. 
*/ 

namespace Vendor\Module\Model\Resource; 

class MgicTaxCaculationRate extends \Magento\Framework\Model\ResourceModel\Db\AbstractDb 
{ 
    /** 
    * Model Initialization 
    * 
    * @return void 
    */ 
    protected function _construct() 
    { 
     $this->_init('mgic_tax_calculation_rate', 'mgic_tax_calculation_rate_id'); 
    } 
} 
\

<?php 
/** 
* Copyright © 2015. All rights reserved. 
*/ 

namespace Vendor\Module\Model; 

class MgicTaxCaculationRate extends \Magento\Framework\Model\AbstractModel 
{ 
    /** 
    * Constructor 
    * 
    * @return void 
    */ 
    protected function _construct() 
    { 
     parent::_construct(); 
     $this->_init('Vendor\Module\Model\Resource\MgicTaxCaculationRate'); 
    } 
} 

\

\ Vendor \ Module \ Model \ Resource \ MgicTaxCaculationRate \ Collection.php

<?php 
/** 
* Copyright © 2015. All rights reserved. 
*/ 

namespace Vendor\Module\Model\Resource\MgicTaxCaculationRate; 

class Collection extends \Magento\Framework\Model\ResourceModel\Db\Collection\AbstractCollection 
{ 
    /** 
    * Define resource model 
    * 
    * @return void 
    */ 
    protected function _construct() 
    { 
     $this->_init('Vendor\Module\Model\MgicTaxCaculationRate', 'Vendor\Module\Model\Resource\MgicTaxCaculationRate'); 
    } 
} 

그런 다음 블록은 단지 이러한 필드에서 System.Xml을 추가하지 않은 이유 그런데

<?php 
namespace Vendor\Module\Block; 
class Example extends \Magento\Framework\View\Element\Template 
{ 
    protected $_mgicFactory; 
    public function _construct(
     \Magento\Framework\View\Element\Template\Context $context, 
     \Vendor\Module\Model\MgicTaxCaculationRate $mgicFactory 
    ){ 
     $this->_mgicFactory = $mgicFactory; 
     parent::_construct($context); 
    } 

    public function _prepareLayout() 
    { 
     $mgic = $this->_mgicFactory ->create(); 
     $collection = $mgic->getCollection(); 
     foreach($collection as $item){ 
      var_dump($item->getData()); 
     } 
     exit; 
    } 
} 

에서?