Magento2.1 বিভাগ কাস্টম বৈশিষ্ট্য ড্রপডাউন


10

ধাপ পুনর্গঠন কর

1. মডিউল আপগ্রেডডাটা.এফপি স্ক্রিপ্টটিতে রয়েছে:

$categorySetup->addAttribute(Category::ENTITY, 'roflcopter', [
                    'type' => 'int',
                    'label' => 'CMS Block',
                    'input' => 'select',
                    'source' => 'Magento\Catalog\Model\Category\Attribute\Source\Page',
                    'required' => false,
                    'sort_order' => 20,
                    'global' => \Magento\Eav\Model\Entity\Attribute\ScopedAttributeInterface::SCOPE_STORE,
                    'group' => 'Display Settings',
            ]);

2. দেখুন / অ্যাডমিনটিচটিএমএল / ইউআই_কম্পোনেন্ট / ক্যাটাগরি_ফর্ম.এক্সএমএল

<?xml version="1.0" encoding="UTF-8"?>
<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
    <fieldset name="Navigation">
        <argument name="data" xsi:type="array">
            <item name="config" xsi:type="array">
                <item name="label" xsi:type="string" translate="true">Navigation</item>
                <item name="collapsible" xsi:type="boolean">true</item>
                <item name="sortOrder" xsi:type="number">100</item>
            </item>
        </argument>
        <field name="roflcopter">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="sortOrder" xsi:type="number">60</item>
                    <item name="dataType" xsi:type="string">string</item>
                    <item name="formElement" xsi:type="string">select</item>
                    <item name="label" xsi:type="string" translate="true">Roflcopter</item>
                </item>
            </argument>
        </field>
    </fieldset>
</form>

প্রত্যাশিত ফলাফল

  1. বিভাগের ফর্মের মধ্যে ড্রপডাউনটি সিএমএস ব্লক সহ বিকল্প হিসাবে Roflcopter নির্বাচন করতে হবে

আসল ফলাফল

  1. খালি ড্রপডাউন

উত্তর:


14

নির্বাচন বিকল্পগুলি তৈরি করার জন্য বিকল্প ট্যাগ যুক্ত করুন। আপনার ক্ষেত্রে এটি হওয়া উচিত


<field name="roflcopter">
    <argument name="data" xsi:type="array">
        <item name="options" xsi:type="object">Magento\Catalog\Model\Category\Attribute\Source\Page</item>
        <item name="config" xsi:type="array">
            <item name="sortOrder" xsi:type="number">70</item>
            <item name="dataType" xsi:type="string">string</item>
            <item name="formElement" xsi:type="string">select</item>
            <item name="label" xsi:type="string" translate="true">Roflcopter</item>
        </item>
    </argument>
</field>


আপনি কি জানেন যে আমি এই ট্যাবটি এবং / অথবা কিছু শর্তাবলীর উপর ভিত্তি করে এর বৈশিষ্ট্যগুলি প্রদর্শন / আড়াল করতে পারি, উদাহরণস্বরূপ বিভাগের গভীরতা?
সের্গেজস জাকাতভস

ধন্যবাদ! আমি এত দিন এটির সন্ধান করছিলাম। এই বিষয়টিতে ডক্স এতটাই অস্পষ্ট। তুমি ইহা কিভাবে জানো?
কমপ্যাক্ট কোড

ডেটাবেজে ডেটাবেস সংরক্ষিত হয়নি @ সোহেল রানা
চিরাগ

2

আমি আমার ক্ষেত্রে করেছি। আমার কাছে কাস্টম অপশন রয়েছে। এল 1, এল 2 এবং এল 3। মানগুলি হিসাবে কাস্টম অ্যাট্রিবিউটে এগুলি নেওয়া দরকার। সুতরাং আমি মডিউলে একটি উত্স ফাইল তৈরি করেছি - বিক্রেতা \ মডিউল \ মডেল \ কনফিগার \ উত্স \ বিকল্পগুলি ph বিকল্পসমূহ

অপশন তৈরি করতে এই ফাইলটিতে ছোট কোড রয়েছে, আপনি এখানে কোডটি অনুসরণ করতে পারেন

 <?php
    /**
     * Copyright © 2013-2017 Magento, Inc. All rights reserved.
     * See COPYING.txt for license details.
     */
    namespace Vendor\module\Model\Config\Source;
    /**
     * Catalog category landing page attribute source
     *
     * @author      Magento Core Team <core@magentocommerce.com>
     */
    class Options extends \Magento\Eav\Model\Entity\Attribute\Source\AbstractSource
    {
        /**
         * {@inheritdoc}
         * @codeCoverageIgnore
         */
        public function getAllOptions()
        {
            if (!$this->_options) {
                $this->_options = [
                    ['value' => 'l1', 'label' => __('L1')],
                    ['value' => 'l2', 'label' => __('L2')],
                    ['value' => 'l3', 'label' => __('L3')],
                ];
            }
            return $this->_options;
        }
          /**
         * Get options in "key-value" format
         *
         * @return array
         */
        public function toArray()
        {
            return [
                'l1' => __('L1'),
                'l2' => __('L2'),
                'L3' => __('L3'),
                ];
        }

    }

তারপরে আপনার ইনস্টলডেটা.পিএফ-এর পরে আপনাকে এটিকে উত্স হিসাবে কল করতে হবে

$eavSetup->addAttribute(
            Category::ENTITY,
            'category_level_rendering',
            [
                'type' => 'varchar',
                'backend' => '',
                'frontend' => '',
                'label' => 'Category Level rendering',
                'input' => 'select',
                'required' => false,
                'sort_order' => 100,
                'source' => '',
                'visible'  => true,
                'source' => 'vendor\module\Model\Config\Source\Options',
                'default'  => '0',
                'global' => \Magento\Eav\Model\Entity\Attribute\ScopedAttributeInterface::SCOPE_STORE,
                'group' => 'General Information',
                'used_in_product_listing' => true,
             ]
        );

তারপরে এক্সএমএল ফাইলে লাইনটি যুক্ত করুন

<field name="category_level_rendering">
                <argument name="data" xsi:type="array">
/*Here is the code added to get the options on dropdown*/
<item name="options" xsi:type="object">Vendor\module\Model\Config\Source\Options</item>
                    <item name="config" xsi:type="array">
                        <item name="sortOrder" xsi:type="number">10</item>
                        <item name="dataType" xsi:type="string">string</item>
                        <item name="formElement" xsi:type="string">select</item>
                        <item name="label" xsi:type="string" translate="true">Category Level Rendering</item>
                    </item>
                </argument>
            </field>

এটি সংরক্ষণ করুন, ফ্লাশ ক্যাশে এবং দয়া করে চেক করুন।

আশা করি এটি আপনাকে সহায়তা করবে।

আপনার যদি এটি কাজ করে তবে দয়া করে আমাকে উত্তর দিন।


আমি এই ধরণের ত্রুটি পেয়েছি: উপাদান 'ক্ষেত্র': এই উপাদানটি প্রত্যাশিত নয়। প্রত্যাশিতগুলির মধ্যে একটি (সেটিংস, কলাম, ক্রিয়া কলাম, নির্বাচনের কলাম)। লাইন: 681
প্রতীক মেহতা

কিভাবে, ডাটা সংরক্ষণ তুমি করেছ
Mujahidh

ডেটাবেজে ডেটাবেজ সংরক্ষিত নেই @ জেডপ্রসাদ ভি
চিরাগ

এটি আমার জন্য কাজ করা হয়েছে, দয়া করে আবার চেক করুন, যদি আপনি স্কিমা পৃষ্ঠায় কোনও পরিবর্তন করেন।
জেডপ্রসাদ ভি

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