প্রোগ্রামেমেগানো 2-এর সাথে আমি কীভাবে কোর_কনফিগ_ডেটা সেট করতে পারি?


13

আমি জানি আপনি এর সাথে ম্যাজেন্টো 1 তে কনফিগার ডেটা সেট করতে পারবেন:

Mage::getModel('core/config')->saveConfig('my/path/whatever', $value);

এবং আপনি এর সাথে ম্যাজেন্টো 2 তে কনফিগার ডেটা পেতে পারেন:

protected $_scopeConfig

public function __construct(\Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig) {
    $this->_scopeConfig = $scopeConfig;
}

+ +

$this->_scopeConfig->getValue( 'path/of/config', \Magento\Store\Model\ScopeInterface::SCOPE_STORE );

তবে আমি বুঝতে পারি না, কীভাবে আমি ম্যাজেন্টো 2-তে কনফিগার ডেটা সংরক্ষণ করতে পারি

উত্তর:


24

এইভাবে আপনার ম্যাজেন্টো 2 কোর_কনফিগ_ডেটাতে ডেটা সংরক্ষণ করা উচিত

    use Magento\Framework\App\Config\ScopeConfigInterface;

    /**
     *  @var \Magento\Framework\App\Config\Storage\WriterInterface
     */
    protected $configWriter;

    /**
     *
     * @param \Magento\Framework\App\Config\Storage\WriterInterface $configWriter
     */
    public function __construct(
        ....
        \Magento\Framework\App\Config\Storage\WriterInterface $configWriter
        .....
    )
    {
        $this->configWriter = $configWriter;
    }

আপনার কলিং পদ্ধতিতে লাইনের নীচে যুক্ত করুন:

$this->configWriter->save('my/path/whatever',  $value, $scope = ScopeConfigInterface::SCOPE_TYPE_DEFAULT, $scopeId = 0);

6

আপনি কনফিগার ইন্টারফেস ক্লাসটি ইনজেক্ট করতে পারেন এবং মানটি সংরক্ষণ করতে এটি ব্যবহার করতে পারেন।

protected $_configInterface;

public function __construct(
    \Magento\Framework\App\Config\ConfigResource\ConfigInterface $configInterface
) {
    $this->_configInterface = $configInterface;
}

তারপরে আপনি এটি আপনার পদ্ধতিতে ব্যবহার করতে পারেন

$this->_configInterface
    ->saveConfig('section/group/field', $value, 'default', 0);

1
আপনার পথগুলি ছাঁটাই করার দরকার নেই তা নিশ্চিত হওয়া ছাড়া এটি করবেন না। এটি কনফিগার রাইটার ব্যবহার করার পরামর্শ দেওয়া হয়
— চুভিস্কো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.