how to create custom options file in magento 2












0















In my custom module , I just created a custom form using ui- component and added select formelement but don't know how to add custom options?



<formElements>
<select>
<settings>
<options class="modulemodule_nameModelConfigSourceoptions"/>
</settings>
</select>
</formElements>









share|improve this question



























    0















    In my custom module , I just created a custom form using ui- component and added select formelement but don't know how to add custom options?



    <formElements>
    <select>
    <settings>
    <options class="modulemodule_nameModelConfigSourceoptions"/>
    </settings>
    </select>
    </formElements>









    share|improve this question

























      0












      0








      0








      In my custom module , I just created a custom form using ui- component and added select formelement but don't know how to add custom options?



      <formElements>
      <select>
      <settings>
      <options class="modulemodule_nameModelConfigSourceoptions"/>
      </settings>
      </select>
      </formElements>









      share|improve this question














      In my custom module , I just created a custom form using ui- component and added select formelement but don't know how to add custom options?



      <formElements>
      <select>
      <settings>
      <options class="modulemodule_nameModelConfigSourceoptions"/>
      </settings>
      </select>
      </formElements>






      magento2 uicomponent






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Oct 3 '18 at 9:26









      kim na nakim na na

      688




      688






















          2 Answers
          2






          active

          oldest

          votes


















          1














          Add below code in your ui form xml file:



          <formElements>
          <select>
          <settings>
          <options class="WebkulTestUiComponentCreateFormCustomerOptions"/>
          </settings>
          </select>
          </formElements>


          And in WebkulTestUiComponentCreateFormCustomerOptions.php:



          <?php
          namespace WebkulTestUiComponentCreateFormCustomer;

           use MagentoFrameworkDataOptionSourceInterface;
          use MagentoCustomerModelResourceModelCustomerCollectionFactory as
          CustomerCollectionFactory;
          use MagentoFrameworkAppRequestInterface;
           

          class Options implements OptionSourceInterface
          {
          public function __construct(
          CustomerCollectionFactory $customerCollectionFactory, $request ) {
          $this->customerCollectionFactory = $customerCollectionFactory; $this->request = $request;}
          public function toOptionArray()
               {
          $arry= array(("label"=>"Test","value"=>"Test");
                   return $arry;
               }
           

          }





          share|improve this answer

































            0














            Add below code in your form element in UI Component xml file ::



            <field name="field1">
            <argument name="data" xsi:type="array">
            <item name="options" xsi:type="object">CwiserFaqModelConfigSourceOptions</item>
            <item name="config" xsi:type="array">
            <item name="label" xsi:type="string" translate="true">Parent Option</item>
            <item name="visible" xsi:type="boolean">true</item>
            <item name="dataType" xsi:type="string">number</item>
            <item name="formElement" xsi:type="string">select</item>
            <item name="source" xsi:type="string">item</item>
            <item name="dataScope" xsi:type="string">field1</item>
            <item name="sortOrder" xsi:type="number">210</item>
            <item name="validation" xsi:type="array">
            <item name="required-entry" xsi:type="boolean">true</item>
            </item>
            </item>
            </argument>
            </field>


            Please also create below file in ModelConfigSource



            <?php

            namespace CwiserFaqModelConfigSource;

            use MagentoFrameworkOptionArrayInterface;

            class Options implements ArrayInterface
            {

            /**
            * @return array
            */
            public function toOptionArray()
            {
            $options = [
            0 => [
            'label' => 'Please select',
            'value' => 0
            ],
            1 => [
            'label' => 'Option 1',
            'value' => 1
            ],
            2 => [
            'label' => 'Option 2',
            'value' => 2
            ],
            3 => [
            'label' => 'Option 3',
            'value' => 3
            ],
            ];

            return $options;
            }

            }





            share|improve this answer

























              Your Answer








              StackExchange.ready(function() {
              var channelOptions = {
              tags: "".split(" "),
              id: "479"
              };
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function() {
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled) {
              StackExchange.using("snippets", function() {
              createEditor();
              });
              }
              else {
              createEditor();
              }
              });

              function createEditor() {
              StackExchange.prepareEditor({
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: false,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: null,
              bindNavPrevention: true,
              postfix: "",
              imageUploader: {
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              },
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              });


              }
              });














              draft saved

              draft discarded


















              StackExchange.ready(
              function () {
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f244842%2fhow-to-create-custom-options-file-in-magento-2%23new-answer', 'question_page');
              }
              );

              Post as a guest















              Required, but never shown

























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              1














              Add below code in your ui form xml file:



              <formElements>
              <select>
              <settings>
              <options class="WebkulTestUiComponentCreateFormCustomerOptions"/>
              </settings>
              </select>
              </formElements>


              And in WebkulTestUiComponentCreateFormCustomerOptions.php:



              <?php
              namespace WebkulTestUiComponentCreateFormCustomer;

               use MagentoFrameworkDataOptionSourceInterface;
              use MagentoCustomerModelResourceModelCustomerCollectionFactory as
              CustomerCollectionFactory;
              use MagentoFrameworkAppRequestInterface;
               

              class Options implements OptionSourceInterface
              {
              public function __construct(
              CustomerCollectionFactory $customerCollectionFactory, $request ) {
              $this->customerCollectionFactory = $customerCollectionFactory; $this->request = $request;}
              public function toOptionArray()
                   {
              $arry= array(("label"=>"Test","value"=>"Test");
                       return $arry;
                   }
               

              }





              share|improve this answer






























                1














                Add below code in your ui form xml file:



                <formElements>
                <select>
                <settings>
                <options class="WebkulTestUiComponentCreateFormCustomerOptions"/>
                </settings>
                </select>
                </formElements>


                And in WebkulTestUiComponentCreateFormCustomerOptions.php:



                <?php
                namespace WebkulTestUiComponentCreateFormCustomer;

                 use MagentoFrameworkDataOptionSourceInterface;
                use MagentoCustomerModelResourceModelCustomerCollectionFactory as
                CustomerCollectionFactory;
                use MagentoFrameworkAppRequestInterface;
                 

                class Options implements OptionSourceInterface
                {
                public function __construct(
                CustomerCollectionFactory $customerCollectionFactory, $request ) {
                $this->customerCollectionFactory = $customerCollectionFactory; $this->request = $request;}
                public function toOptionArray()
                     {
                $arry= array(("label"=>"Test","value"=>"Test");
                         return $arry;
                     }
                 

                }





                share|improve this answer




























                  1












                  1








                  1







                  Add below code in your ui form xml file:



                  <formElements>
                  <select>
                  <settings>
                  <options class="WebkulTestUiComponentCreateFormCustomerOptions"/>
                  </settings>
                  </select>
                  </formElements>


                  And in WebkulTestUiComponentCreateFormCustomerOptions.php:



                  <?php
                  namespace WebkulTestUiComponentCreateFormCustomer;

                   use MagentoFrameworkDataOptionSourceInterface;
                  use MagentoCustomerModelResourceModelCustomerCollectionFactory as
                  CustomerCollectionFactory;
                  use MagentoFrameworkAppRequestInterface;
                   

                  class Options implements OptionSourceInterface
                  {
                  public function __construct(
                  CustomerCollectionFactory $customerCollectionFactory, $request ) {
                  $this->customerCollectionFactory = $customerCollectionFactory; $this->request = $request;}
                  public function toOptionArray()
                       {
                  $arry= array(("label"=>"Test","value"=>"Test");
                           return $arry;
                       }
                   

                  }





                  share|improve this answer















                  Add below code in your ui form xml file:



                  <formElements>
                  <select>
                  <settings>
                  <options class="WebkulTestUiComponentCreateFormCustomerOptions"/>
                  </settings>
                  </select>
                  </formElements>


                  And in WebkulTestUiComponentCreateFormCustomerOptions.php:



                  <?php
                  namespace WebkulTestUiComponentCreateFormCustomer;

                   use MagentoFrameworkDataOptionSourceInterface;
                  use MagentoCustomerModelResourceModelCustomerCollectionFactory as
                  CustomerCollectionFactory;
                  use MagentoFrameworkAppRequestInterface;
                   

                  class Options implements OptionSourceInterface
                  {
                  public function __construct(
                  CustomerCollectionFactory $customerCollectionFactory, $request ) {
                  $this->customerCollectionFactory = $customerCollectionFactory; $this->request = $request;}
                  public function toOptionArray()
                       {
                  $arry= array(("label"=>"Test","value"=>"Test");
                           return $arry;
                       }
                   

                  }






                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited 46 mins ago









                  mahmoudismail

                  3651322




                  3651322










                  answered Oct 3 '18 at 11:31









                  Rutvee SojitraRutvee Sojitra

                  1,4171121




                  1,4171121

























                      0














                      Add below code in your form element in UI Component xml file ::



                      <field name="field1">
                      <argument name="data" xsi:type="array">
                      <item name="options" xsi:type="object">CwiserFaqModelConfigSourceOptions</item>
                      <item name="config" xsi:type="array">
                      <item name="label" xsi:type="string" translate="true">Parent Option</item>
                      <item name="visible" xsi:type="boolean">true</item>
                      <item name="dataType" xsi:type="string">number</item>
                      <item name="formElement" xsi:type="string">select</item>
                      <item name="source" xsi:type="string">item</item>
                      <item name="dataScope" xsi:type="string">field1</item>
                      <item name="sortOrder" xsi:type="number">210</item>
                      <item name="validation" xsi:type="array">
                      <item name="required-entry" xsi:type="boolean">true</item>
                      </item>
                      </item>
                      </argument>
                      </field>


                      Please also create below file in ModelConfigSource



                      <?php

                      namespace CwiserFaqModelConfigSource;

                      use MagentoFrameworkOptionArrayInterface;

                      class Options implements ArrayInterface
                      {

                      /**
                      * @return array
                      */
                      public function toOptionArray()
                      {
                      $options = [
                      0 => [
                      'label' => 'Please select',
                      'value' => 0
                      ],
                      1 => [
                      'label' => 'Option 1',
                      'value' => 1
                      ],
                      2 => [
                      'label' => 'Option 2',
                      'value' => 2
                      ],
                      3 => [
                      'label' => 'Option 3',
                      'value' => 3
                      ],
                      ];

                      return $options;
                      }

                      }





                      share|improve this answer






























                        0














                        Add below code in your form element in UI Component xml file ::



                        <field name="field1">
                        <argument name="data" xsi:type="array">
                        <item name="options" xsi:type="object">CwiserFaqModelConfigSourceOptions</item>
                        <item name="config" xsi:type="array">
                        <item name="label" xsi:type="string" translate="true">Parent Option</item>
                        <item name="visible" xsi:type="boolean">true</item>
                        <item name="dataType" xsi:type="string">number</item>
                        <item name="formElement" xsi:type="string">select</item>
                        <item name="source" xsi:type="string">item</item>
                        <item name="dataScope" xsi:type="string">field1</item>
                        <item name="sortOrder" xsi:type="number">210</item>
                        <item name="validation" xsi:type="array">
                        <item name="required-entry" xsi:type="boolean">true</item>
                        </item>
                        </item>
                        </argument>
                        </field>


                        Please also create below file in ModelConfigSource



                        <?php

                        namespace CwiserFaqModelConfigSource;

                        use MagentoFrameworkOptionArrayInterface;

                        class Options implements ArrayInterface
                        {

                        /**
                        * @return array
                        */
                        public function toOptionArray()
                        {
                        $options = [
                        0 => [
                        'label' => 'Please select',
                        'value' => 0
                        ],
                        1 => [
                        'label' => 'Option 1',
                        'value' => 1
                        ],
                        2 => [
                        'label' => 'Option 2',
                        'value' => 2
                        ],
                        3 => [
                        'label' => 'Option 3',
                        'value' => 3
                        ],
                        ];

                        return $options;
                        }

                        }





                        share|improve this answer




























                          0












                          0








                          0







                          Add below code in your form element in UI Component xml file ::



                          <field name="field1">
                          <argument name="data" xsi:type="array">
                          <item name="options" xsi:type="object">CwiserFaqModelConfigSourceOptions</item>
                          <item name="config" xsi:type="array">
                          <item name="label" xsi:type="string" translate="true">Parent Option</item>
                          <item name="visible" xsi:type="boolean">true</item>
                          <item name="dataType" xsi:type="string">number</item>
                          <item name="formElement" xsi:type="string">select</item>
                          <item name="source" xsi:type="string">item</item>
                          <item name="dataScope" xsi:type="string">field1</item>
                          <item name="sortOrder" xsi:type="number">210</item>
                          <item name="validation" xsi:type="array">
                          <item name="required-entry" xsi:type="boolean">true</item>
                          </item>
                          </item>
                          </argument>
                          </field>


                          Please also create below file in ModelConfigSource



                          <?php

                          namespace CwiserFaqModelConfigSource;

                          use MagentoFrameworkOptionArrayInterface;

                          class Options implements ArrayInterface
                          {

                          /**
                          * @return array
                          */
                          public function toOptionArray()
                          {
                          $options = [
                          0 => [
                          'label' => 'Please select',
                          'value' => 0
                          ],
                          1 => [
                          'label' => 'Option 1',
                          'value' => 1
                          ],
                          2 => [
                          'label' => 'Option 2',
                          'value' => 2
                          ],
                          3 => [
                          'label' => 'Option 3',
                          'value' => 3
                          ],
                          ];

                          return $options;
                          }

                          }





                          share|improve this answer















                          Add below code in your form element in UI Component xml file ::



                          <field name="field1">
                          <argument name="data" xsi:type="array">
                          <item name="options" xsi:type="object">CwiserFaqModelConfigSourceOptions</item>
                          <item name="config" xsi:type="array">
                          <item name="label" xsi:type="string" translate="true">Parent Option</item>
                          <item name="visible" xsi:type="boolean">true</item>
                          <item name="dataType" xsi:type="string">number</item>
                          <item name="formElement" xsi:type="string">select</item>
                          <item name="source" xsi:type="string">item</item>
                          <item name="dataScope" xsi:type="string">field1</item>
                          <item name="sortOrder" xsi:type="number">210</item>
                          <item name="validation" xsi:type="array">
                          <item name="required-entry" xsi:type="boolean">true</item>
                          </item>
                          </item>
                          </argument>
                          </field>


                          Please also create below file in ModelConfigSource



                          <?php

                          namespace CwiserFaqModelConfigSource;

                          use MagentoFrameworkOptionArrayInterface;

                          class Options implements ArrayInterface
                          {

                          /**
                          * @return array
                          */
                          public function toOptionArray()
                          {
                          $options = [
                          0 => [
                          'label' => 'Please select',
                          'value' => 0
                          ],
                          1 => [
                          'label' => 'Option 1',
                          'value' => 1
                          ],
                          2 => [
                          'label' => 'Option 2',
                          'value' => 2
                          ],
                          3 => [
                          'label' => 'Option 3',
                          'value' => 3
                          ],
                          ];

                          return $options;
                          }

                          }






                          share|improve this answer














                          share|improve this answer



                          share|improve this answer








                          edited Oct 3 '18 at 13:16

























                          answered Oct 3 '18 at 13:09









                          Sakera VoraSakera Vora

                          11




                          11






























                              draft saved

                              draft discarded




















































                              Thanks for contributing an answer to Magento Stack Exchange!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid



                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.


                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function () {
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f244842%2fhow-to-create-custom-options-file-in-magento-2%23new-answer', 'question_page');
                              }
                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown







                              Popular posts from this blog

                              What other Star Trek series did the main TNG cast show up in?

                              Berlina muro

                              Berlina aerponto