Domanda

I've checked the example here: https://devdocs.magento.com/guides/v2.3/ext-best-practices/tutorials/dynamic-row-system-config.html

Which add text inputs, But how to add other types of input such as drop down and file upload?

È stato utile?

Soluzione

Not fully answered the question but it helps to point in the right direction;

Under Class: Magento\Config\Block\System\Config\Form\Field\FieldArray\AbstractFieldArray You can overwrite on you custom class the method responsible to rendering the html input:look for renderCellTemplate Method:

As a test I have overwritten by simply changing from: type="text" to: type="checkbox" and The result is: enter image description here

All it need to do is add html <select> and <option> html and that should do.

UPDATE: I've made use of renderer here is an example from Braintree module.

/**
     * Returns renderer for country element
     *
     * @return Countries
     */
    protected function getCountryRenderer()
    {
        if (!$this->countryRenderer) {
            $this->countryRenderer = $this->getLayout()->createBlock(
                Countries::class,
                '',
                ['data' => ['is_render_to_js_template' => true]]
            );
        }
        return $this->countryRenderer;
    }

The above is rendering the countries drop down but I am loading the categories. finale look like this: enter image description here Best!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top