How Do we can give dynamic data for a form field in admin form(ui-component) in magento 2Product Listing Ui Component xml file not overriding in custom moduleMagento 2 Admin Form FieldMagento 2 Add new field to Magento_User admin formCan't set value for wysiwyg field component in admin formMagento2: Dependency in admin form fieldHow to add default values for system configuration in magento 2Add a generic field in admin formHow to Update Magento 2 configurable child products price by REST APIField labels missing from UI component formHow to create dynamic rows field in custom Ui component formHow to add form element CANVAS using ui component magento admin form

Seemingly unused edef prior to an ifx mysteriously affects the outcome of the ifx. Why?

What is the most expensive material in the world that could be used to create Pun-Pun's lute?

What route did the Hindenburg take when traveling from Germany to the U.S.?

What does it mean to express a gate in Dirac notation?

What are the potential pitfalls when using metals as a currency?

Why is it that the natural deduction method can't test for invalidity?

What do the phrase "Reeyan's seacrest" and the word "fraggle" mean in a sketch?

Why do Computer Science majors learn Calculus?

How to stop co-workers from teasing me because I know Russian?

Why does academia still use scientific journals and not peer-reviewed government funded alternatives?

How to creep the reader out with what seems like a normal person?

Pulling the rope with one hand is as heavy as with two hands?

Does a semiconductor follow Ohm's law?

Don’t seats that recline flat defeat the purpose of having seatbelts?

How to have a sharp product image?

Controversial area of mathematics

Why was the Spitfire's elliptical wing almost uncopied by other aircraft of World War 2?

What happened to Captain America in Endgame?

What does KSP mean?

Examples of non trivial equivalence relations , I mean equivalence relations without the expression " same ... as" in their definition?

How to solve constants out of the internal energy equation?

How to verbalise code in Mathematica?

What is the strongest case that can be made in favour of the UK regaining some control over fishing policy after Brexit?

Exchange,swap or switch



How Do we can give dynamic data for a form field in admin form(ui-component) in magento 2


Product Listing Ui Component xml file not overriding in custom moduleMagento 2 Admin Form FieldMagento 2 Add new field to Magento_User admin formCan't set value for wysiwyg field component in admin formMagento2: Dependency in admin form fieldHow to add default values for system configuration in magento 2Add a generic field in admin formHow to Update Magento 2 configurable child products price by REST APIField labels missing from UI component formHow to create dynamic rows field in custom Ui component formHow to add form element CANVAS using ui component magento admin form






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0















I need to add note to the form field using notice tag. for example



 <notice translate="true">Image size should be equal to some(here I
need to pass dynamic value)</notice>


form.xml



 <field name="image" sortOrder="60" formElement="fileUploader">
<settings>
<notice translate="true">Image size should be equal to some(here I need to pass dynamic value)</notice>
<label translate="true">Image</label>
<componentType>fileUploader</componentType>
<visible>true</visible>
</settings>
<formElements>
<fileUploader>
<settings>
<allowedExtensions>jpg jpeg gif png</allowedExtensions>
<maxFileSize>102400</maxFileSize>
<uploaderConfig>
<param xsi:type="string" name="url">a/b/c</param>
</uploaderConfig>
<previewTmpl>x_y/image-preview</previewTmpl>
</settings>
</fileUploader>
</formElements>
</field>









share|improve this question
















bumped to the homepage by Community 10 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.















  • how to create form using ui-component? or simple

    – Birjitsinh Zala
    Jan 17 '18 at 13:11











  • I have created form using ui-component

    – Jaisa
    Jan 17 '18 at 13:12












  • <uiComponent name="vendor_department_addform"/> wait am write full code in ans

    – Birjitsinh Zala
    Jan 17 '18 at 13:15

















0















I need to add note to the form field using notice tag. for example



 <notice translate="true">Image size should be equal to some(here I
need to pass dynamic value)</notice>


form.xml



 <field name="image" sortOrder="60" formElement="fileUploader">
<settings>
<notice translate="true">Image size should be equal to some(here I need to pass dynamic value)</notice>
<label translate="true">Image</label>
<componentType>fileUploader</componentType>
<visible>true</visible>
</settings>
<formElements>
<fileUploader>
<settings>
<allowedExtensions>jpg jpeg gif png</allowedExtensions>
<maxFileSize>102400</maxFileSize>
<uploaderConfig>
<param xsi:type="string" name="url">a/b/c</param>
</uploaderConfig>
<previewTmpl>x_y/image-preview</previewTmpl>
</settings>
</fileUploader>
</formElements>
</field>









share|improve this question
















bumped to the homepage by Community 10 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.















  • how to create form using ui-component? or simple

    – Birjitsinh Zala
    Jan 17 '18 at 13:11











  • I have created form using ui-component

    – Jaisa
    Jan 17 '18 at 13:12












  • <uiComponent name="vendor_department_addform"/> wait am write full code in ans

    – Birjitsinh Zala
    Jan 17 '18 at 13:15













0












0








0








I need to add note to the form field using notice tag. for example



 <notice translate="true">Image size should be equal to some(here I
need to pass dynamic value)</notice>


form.xml



 <field name="image" sortOrder="60" formElement="fileUploader">
<settings>
<notice translate="true">Image size should be equal to some(here I need to pass dynamic value)</notice>
<label translate="true">Image</label>
<componentType>fileUploader</componentType>
<visible>true</visible>
</settings>
<formElements>
<fileUploader>
<settings>
<allowedExtensions>jpg jpeg gif png</allowedExtensions>
<maxFileSize>102400</maxFileSize>
<uploaderConfig>
<param xsi:type="string" name="url">a/b/c</param>
</uploaderConfig>
<previewTmpl>x_y/image-preview</previewTmpl>
</settings>
</fileUploader>
</formElements>
</field>









share|improve this question
















I need to add note to the form field using notice tag. for example



 <notice translate="true">Image size should be equal to some(here I
need to pass dynamic value)</notice>


form.xml



 <field name="image" sortOrder="60" formElement="fileUploader">
<settings>
<notice translate="true">Image size should be equal to some(here I need to pass dynamic value)</notice>
<label translate="true">Image</label>
<componentType>fileUploader</componentType>
<visible>true</visible>
</settings>
<formElements>
<fileUploader>
<settings>
<allowedExtensions>jpg jpeg gif png</allowedExtensions>
<maxFileSize>102400</maxFileSize>
<uploaderConfig>
<param xsi:type="string" name="url">a/b/c</param>
</uploaderConfig>
<previewTmpl>x_y/image-preview</previewTmpl>
</settings>
</fileUploader>
</formElements>
</field>






magento2.2 uicomponent adminform custom-field






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 17 '18 at 13:33







Jaisa

















asked Jan 17 '18 at 13:00









JaisaJaisa

9061940




9061940





bumped to the homepage by Community 10 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.







bumped to the homepage by Community 10 mins ago


This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.














  • how to create form using ui-component? or simple

    – Birjitsinh Zala
    Jan 17 '18 at 13:11











  • I have created form using ui-component

    – Jaisa
    Jan 17 '18 at 13:12












  • <uiComponent name="vendor_department_addform"/> wait am write full code in ans

    – Birjitsinh Zala
    Jan 17 '18 at 13:15

















  • how to create form using ui-component? or simple

    – Birjitsinh Zala
    Jan 17 '18 at 13:11











  • I have created form using ui-component

    – Jaisa
    Jan 17 '18 at 13:12












  • <uiComponent name="vendor_department_addform"/> wait am write full code in ans

    – Birjitsinh Zala
    Jan 17 '18 at 13:15
















how to create form using ui-component? or simple

– Birjitsinh Zala
Jan 17 '18 at 13:11





how to create form using ui-component? or simple

– Birjitsinh Zala
Jan 17 '18 at 13:11













I have created form using ui-component

– Jaisa
Jan 17 '18 at 13:12






I have created form using ui-component

– Jaisa
Jan 17 '18 at 13:12














<uiComponent name="vendor_department_addform"/> wait am write full code in ans

– Birjitsinh Zala
Jan 17 '18 at 13:15





<uiComponent name="vendor_department_addform"/> wait am write full code in ans

– Birjitsinh Zala
Jan 17 '18 at 13:15










1 Answer
1






active

oldest

votes


















0














view/adminhtml/layout/form_index_index.xml



<body>
<referenceContainer name="content">
<uiComponent name="vendor_department_addform"/>
</referenceContainer>
</body>


view/adminhtml/ui_component/vendor_department_addform.xml



<?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">
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="provider" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
<item name="deps" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
</item>
<item name="label" xsi:type="string" translate="true">Department Information</item>
<item name="layout" xsi:type="array">
<item name="type" xsi:type="string">tabs</item>
</item>
</argument>
<settings>
<buttons>
<button name="save" class="VendorModuleBlockAdminhtmlAddSaveButton"/>
<button name="reset" class="VendorModuleBlockAdminhtmlAddResetButton"/>
<button name="back" class="VendorModuleBlockAdminhtmlAddBackButton"/>
</buttons>
</settings>

<dataSource name="vendor_department_addform_data_source">
<argument name="dataProvider" xsi:type="configurableObject">
<argument name="class" xsi:type="string">VendorModuleModelDataProvider</argument>
<argument name="name" xsi:type="string">vendor_department_addform_data_source</argument>
<argument name="primaryFieldName" xsi:type="string">department_id</argument>
<argument name="requestFieldName" xsi:type="string">id</argument>
</argument>
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="component" xsi:type="string">Magento_Ui/js/form/provider</item>
</item>
</argument>
<settings>
<submitUrl path="vendor/department/save"/>
</settings>
</dataSource>

<fieldset name="department_fieldset">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="label" xsi:type="string" translate="true">Add new department</item>
</item>
</argument>

<!-- This field represents form id and is hidden -->
<field name="department_id">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="visible" xsi:type="boolean">false</item>
<item name="dataType" xsi:type="string">text</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
</item>
</argument>
</field>
<!-- This field has data type 'text' and standard 'input' form element and looks like input -->
<field name="title">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Title</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">title</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="identifier">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Identifier</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">identifier</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="description">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Description</item>
<item name="formElement" xsi:type="string">textarea</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">description</item>
</item>
</argument>
</field>
<field name="sort_order">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Sort order</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">sort_order</item>
<item name="validation" xsi:type="array">
<item name="validate-number" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="status">
<argument name="data" xsi:type="array">
<item name="options" xsi:type="object">VendorModuleModelDepartmentSourceSelectOption</item>
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Status</item>
<item name="formElement" xsi:type="string">select</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">status</item>
<!-- <item name="default" xsi:type="string">0</item> -->
</item>
</argument>
</field>
</fieldset>
</form>


VendorModuleModelDataProvider.php this is use for form data



namespace VendormoduleModel;

use VendormoduleModelResourceModelDepartmentCollectionFactory;

/**
* Class DataProvider
*/
class DataProvider extends MagentoUiDataProviderAbstractDataProvider

/**
* @var CustomModuleModelResourceModelMessagesCollection
*/
protected $collection;

/**
* @var array
*/
protected $loadedData;

/**
* @param string $name
* @param string $primaryFieldName
* @param string $requestFieldName
* @param CollectionFactory $pageCollectionFactory
* @param array $meta
* @param array $data
*/
public function __construct(
$name,
$primaryFieldName,
$requestFieldName,
CollectionFactory $pageCollectionFactory,

array $meta = [],
array $data = []
)
$this->collection = $pageCollectionFactory->create();
parent::__construct($name, $primaryFieldName, $requestFieldName, $meta, $data);
$this->meta = $this->prepareMeta($this->meta);


/**
* Prepares Meta
*
* @param array $meta
* @return array
*/
public function prepareMeta(array $meta)

return $meta;


/**
* Get data
*
* @return array
*/
public function getData()

if (isset($this->loadedData))
return $this->loadedData;

$items = $this->collection->getItems();
/** @var $page CustomModuleModelMessages */
foreach ($items as $page)
$this->loadedData[$page->getId()] = $page->getData();

//echo "<pre>";print_r($this->loadedData);die;
return $this->loadedData;







share|improve this answer

























  • Thank you for your response, But my question is I need to add note to the form field. In that note message I need to pass dynamic values or data. For example <notice> Image size should be equal to some(here I need to pass dynamic value) size</notice>

    – Jaisa
    Jan 17 '18 at 13:24











  • dataprovider.php handle dynamic data

    – Birjitsinh Zala
    Jan 17 '18 at 13:27











  • Please see the updated post

    – Jaisa
    Jan 17 '18 at 13:30











  • <item name="component" xsi:type="string">Namespace_ModuleName/js/form/element/options</item> change using js

    – Birjitsinh Zala
    Jan 17 '18 at 13:48












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%2f209804%2fhow-do-we-can-give-dynamic-data-for-a-form-field-in-admin-formui-component-in%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









0














view/adminhtml/layout/form_index_index.xml



<body>
<referenceContainer name="content">
<uiComponent name="vendor_department_addform"/>
</referenceContainer>
</body>


view/adminhtml/ui_component/vendor_department_addform.xml



<?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">
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="provider" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
<item name="deps" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
</item>
<item name="label" xsi:type="string" translate="true">Department Information</item>
<item name="layout" xsi:type="array">
<item name="type" xsi:type="string">tabs</item>
</item>
</argument>
<settings>
<buttons>
<button name="save" class="VendorModuleBlockAdminhtmlAddSaveButton"/>
<button name="reset" class="VendorModuleBlockAdminhtmlAddResetButton"/>
<button name="back" class="VendorModuleBlockAdminhtmlAddBackButton"/>
</buttons>
</settings>

<dataSource name="vendor_department_addform_data_source">
<argument name="dataProvider" xsi:type="configurableObject">
<argument name="class" xsi:type="string">VendorModuleModelDataProvider</argument>
<argument name="name" xsi:type="string">vendor_department_addform_data_source</argument>
<argument name="primaryFieldName" xsi:type="string">department_id</argument>
<argument name="requestFieldName" xsi:type="string">id</argument>
</argument>
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="component" xsi:type="string">Magento_Ui/js/form/provider</item>
</item>
</argument>
<settings>
<submitUrl path="vendor/department/save"/>
</settings>
</dataSource>

<fieldset name="department_fieldset">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="label" xsi:type="string" translate="true">Add new department</item>
</item>
</argument>

<!-- This field represents form id and is hidden -->
<field name="department_id">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="visible" xsi:type="boolean">false</item>
<item name="dataType" xsi:type="string">text</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
</item>
</argument>
</field>
<!-- This field has data type 'text' and standard 'input' form element and looks like input -->
<field name="title">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Title</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">title</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="identifier">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Identifier</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">identifier</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="description">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Description</item>
<item name="formElement" xsi:type="string">textarea</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">description</item>
</item>
</argument>
</field>
<field name="sort_order">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Sort order</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">sort_order</item>
<item name="validation" xsi:type="array">
<item name="validate-number" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="status">
<argument name="data" xsi:type="array">
<item name="options" xsi:type="object">VendorModuleModelDepartmentSourceSelectOption</item>
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Status</item>
<item name="formElement" xsi:type="string">select</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">status</item>
<!-- <item name="default" xsi:type="string">0</item> -->
</item>
</argument>
</field>
</fieldset>
</form>


VendorModuleModelDataProvider.php this is use for form data



namespace VendormoduleModel;

use VendormoduleModelResourceModelDepartmentCollectionFactory;

/**
* Class DataProvider
*/
class DataProvider extends MagentoUiDataProviderAbstractDataProvider

/**
* @var CustomModuleModelResourceModelMessagesCollection
*/
protected $collection;

/**
* @var array
*/
protected $loadedData;

/**
* @param string $name
* @param string $primaryFieldName
* @param string $requestFieldName
* @param CollectionFactory $pageCollectionFactory
* @param array $meta
* @param array $data
*/
public function __construct(
$name,
$primaryFieldName,
$requestFieldName,
CollectionFactory $pageCollectionFactory,

array $meta = [],
array $data = []
)
$this->collection = $pageCollectionFactory->create();
parent::__construct($name, $primaryFieldName, $requestFieldName, $meta, $data);
$this->meta = $this->prepareMeta($this->meta);


/**
* Prepares Meta
*
* @param array $meta
* @return array
*/
public function prepareMeta(array $meta)

return $meta;


/**
* Get data
*
* @return array
*/
public function getData()

if (isset($this->loadedData))
return $this->loadedData;

$items = $this->collection->getItems();
/** @var $page CustomModuleModelMessages */
foreach ($items as $page)
$this->loadedData[$page->getId()] = $page->getData();

//echo "<pre>";print_r($this->loadedData);die;
return $this->loadedData;







share|improve this answer

























  • Thank you for your response, But my question is I need to add note to the form field. In that note message I need to pass dynamic values or data. For example <notice> Image size should be equal to some(here I need to pass dynamic value) size</notice>

    – Jaisa
    Jan 17 '18 at 13:24











  • dataprovider.php handle dynamic data

    – Birjitsinh Zala
    Jan 17 '18 at 13:27











  • Please see the updated post

    – Jaisa
    Jan 17 '18 at 13:30











  • <item name="component" xsi:type="string">Namespace_ModuleName/js/form/element/options</item> change using js

    – Birjitsinh Zala
    Jan 17 '18 at 13:48
















0














view/adminhtml/layout/form_index_index.xml



<body>
<referenceContainer name="content">
<uiComponent name="vendor_department_addform"/>
</referenceContainer>
</body>


view/adminhtml/ui_component/vendor_department_addform.xml



<?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">
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="provider" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
<item name="deps" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
</item>
<item name="label" xsi:type="string" translate="true">Department Information</item>
<item name="layout" xsi:type="array">
<item name="type" xsi:type="string">tabs</item>
</item>
</argument>
<settings>
<buttons>
<button name="save" class="VendorModuleBlockAdminhtmlAddSaveButton"/>
<button name="reset" class="VendorModuleBlockAdminhtmlAddResetButton"/>
<button name="back" class="VendorModuleBlockAdminhtmlAddBackButton"/>
</buttons>
</settings>

<dataSource name="vendor_department_addform_data_source">
<argument name="dataProvider" xsi:type="configurableObject">
<argument name="class" xsi:type="string">VendorModuleModelDataProvider</argument>
<argument name="name" xsi:type="string">vendor_department_addform_data_source</argument>
<argument name="primaryFieldName" xsi:type="string">department_id</argument>
<argument name="requestFieldName" xsi:type="string">id</argument>
</argument>
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="component" xsi:type="string">Magento_Ui/js/form/provider</item>
</item>
</argument>
<settings>
<submitUrl path="vendor/department/save"/>
</settings>
</dataSource>

<fieldset name="department_fieldset">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="label" xsi:type="string" translate="true">Add new department</item>
</item>
</argument>

<!-- This field represents form id and is hidden -->
<field name="department_id">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="visible" xsi:type="boolean">false</item>
<item name="dataType" xsi:type="string">text</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
</item>
</argument>
</field>
<!-- This field has data type 'text' and standard 'input' form element and looks like input -->
<field name="title">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Title</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">title</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="identifier">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Identifier</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">identifier</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="description">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Description</item>
<item name="formElement" xsi:type="string">textarea</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">description</item>
</item>
</argument>
</field>
<field name="sort_order">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Sort order</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">sort_order</item>
<item name="validation" xsi:type="array">
<item name="validate-number" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="status">
<argument name="data" xsi:type="array">
<item name="options" xsi:type="object">VendorModuleModelDepartmentSourceSelectOption</item>
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Status</item>
<item name="formElement" xsi:type="string">select</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">status</item>
<!-- <item name="default" xsi:type="string">0</item> -->
</item>
</argument>
</field>
</fieldset>
</form>


VendorModuleModelDataProvider.php this is use for form data



namespace VendormoduleModel;

use VendormoduleModelResourceModelDepartmentCollectionFactory;

/**
* Class DataProvider
*/
class DataProvider extends MagentoUiDataProviderAbstractDataProvider

/**
* @var CustomModuleModelResourceModelMessagesCollection
*/
protected $collection;

/**
* @var array
*/
protected $loadedData;

/**
* @param string $name
* @param string $primaryFieldName
* @param string $requestFieldName
* @param CollectionFactory $pageCollectionFactory
* @param array $meta
* @param array $data
*/
public function __construct(
$name,
$primaryFieldName,
$requestFieldName,
CollectionFactory $pageCollectionFactory,

array $meta = [],
array $data = []
)
$this->collection = $pageCollectionFactory->create();
parent::__construct($name, $primaryFieldName, $requestFieldName, $meta, $data);
$this->meta = $this->prepareMeta($this->meta);


/**
* Prepares Meta
*
* @param array $meta
* @return array
*/
public function prepareMeta(array $meta)

return $meta;


/**
* Get data
*
* @return array
*/
public function getData()

if (isset($this->loadedData))
return $this->loadedData;

$items = $this->collection->getItems();
/** @var $page CustomModuleModelMessages */
foreach ($items as $page)
$this->loadedData[$page->getId()] = $page->getData();

//echo "<pre>";print_r($this->loadedData);die;
return $this->loadedData;







share|improve this answer

























  • Thank you for your response, But my question is I need to add note to the form field. In that note message I need to pass dynamic values or data. For example <notice> Image size should be equal to some(here I need to pass dynamic value) size</notice>

    – Jaisa
    Jan 17 '18 at 13:24











  • dataprovider.php handle dynamic data

    – Birjitsinh Zala
    Jan 17 '18 at 13:27











  • Please see the updated post

    – Jaisa
    Jan 17 '18 at 13:30











  • <item name="component" xsi:type="string">Namespace_ModuleName/js/form/element/options</item> change using js

    – Birjitsinh Zala
    Jan 17 '18 at 13:48














0












0








0







view/adminhtml/layout/form_index_index.xml



<body>
<referenceContainer name="content">
<uiComponent name="vendor_department_addform"/>
</referenceContainer>
</body>


view/adminhtml/ui_component/vendor_department_addform.xml



<?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">
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="provider" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
<item name="deps" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
</item>
<item name="label" xsi:type="string" translate="true">Department Information</item>
<item name="layout" xsi:type="array">
<item name="type" xsi:type="string">tabs</item>
</item>
</argument>
<settings>
<buttons>
<button name="save" class="VendorModuleBlockAdminhtmlAddSaveButton"/>
<button name="reset" class="VendorModuleBlockAdminhtmlAddResetButton"/>
<button name="back" class="VendorModuleBlockAdminhtmlAddBackButton"/>
</buttons>
</settings>

<dataSource name="vendor_department_addform_data_source">
<argument name="dataProvider" xsi:type="configurableObject">
<argument name="class" xsi:type="string">VendorModuleModelDataProvider</argument>
<argument name="name" xsi:type="string">vendor_department_addform_data_source</argument>
<argument name="primaryFieldName" xsi:type="string">department_id</argument>
<argument name="requestFieldName" xsi:type="string">id</argument>
</argument>
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="component" xsi:type="string">Magento_Ui/js/form/provider</item>
</item>
</argument>
<settings>
<submitUrl path="vendor/department/save"/>
</settings>
</dataSource>

<fieldset name="department_fieldset">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="label" xsi:type="string" translate="true">Add new department</item>
</item>
</argument>

<!-- This field represents form id and is hidden -->
<field name="department_id">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="visible" xsi:type="boolean">false</item>
<item name="dataType" xsi:type="string">text</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
</item>
</argument>
</field>
<!-- This field has data type 'text' and standard 'input' form element and looks like input -->
<field name="title">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Title</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">title</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="identifier">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Identifier</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">identifier</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="description">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Description</item>
<item name="formElement" xsi:type="string">textarea</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">description</item>
</item>
</argument>
</field>
<field name="sort_order">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Sort order</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">sort_order</item>
<item name="validation" xsi:type="array">
<item name="validate-number" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="status">
<argument name="data" xsi:type="array">
<item name="options" xsi:type="object">VendorModuleModelDepartmentSourceSelectOption</item>
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Status</item>
<item name="formElement" xsi:type="string">select</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">status</item>
<!-- <item name="default" xsi:type="string">0</item> -->
</item>
</argument>
</field>
</fieldset>
</form>


VendorModuleModelDataProvider.php this is use for form data



namespace VendormoduleModel;

use VendormoduleModelResourceModelDepartmentCollectionFactory;

/**
* Class DataProvider
*/
class DataProvider extends MagentoUiDataProviderAbstractDataProvider

/**
* @var CustomModuleModelResourceModelMessagesCollection
*/
protected $collection;

/**
* @var array
*/
protected $loadedData;

/**
* @param string $name
* @param string $primaryFieldName
* @param string $requestFieldName
* @param CollectionFactory $pageCollectionFactory
* @param array $meta
* @param array $data
*/
public function __construct(
$name,
$primaryFieldName,
$requestFieldName,
CollectionFactory $pageCollectionFactory,

array $meta = [],
array $data = []
)
$this->collection = $pageCollectionFactory->create();
parent::__construct($name, $primaryFieldName, $requestFieldName, $meta, $data);
$this->meta = $this->prepareMeta($this->meta);


/**
* Prepares Meta
*
* @param array $meta
* @return array
*/
public function prepareMeta(array $meta)

return $meta;


/**
* Get data
*
* @return array
*/
public function getData()

if (isset($this->loadedData))
return $this->loadedData;

$items = $this->collection->getItems();
/** @var $page CustomModuleModelMessages */
foreach ($items as $page)
$this->loadedData[$page->getId()] = $page->getData();

//echo "<pre>";print_r($this->loadedData);die;
return $this->loadedData;







share|improve this answer















view/adminhtml/layout/form_index_index.xml



<body>
<referenceContainer name="content">
<uiComponent name="vendor_department_addform"/>
</referenceContainer>
</body>


view/adminhtml/ui_component/vendor_department_addform.xml



<?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">
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="provider" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
<item name="deps" xsi:type="string">vendor_department_addform.vendor_department_addform_data_source</item>
</item>
<item name="label" xsi:type="string" translate="true">Department Information</item>
<item name="layout" xsi:type="array">
<item name="type" xsi:type="string">tabs</item>
</item>
</argument>
<settings>
<buttons>
<button name="save" class="VendorModuleBlockAdminhtmlAddSaveButton"/>
<button name="reset" class="VendorModuleBlockAdminhtmlAddResetButton"/>
<button name="back" class="VendorModuleBlockAdminhtmlAddBackButton"/>
</buttons>
</settings>

<dataSource name="vendor_department_addform_data_source">
<argument name="dataProvider" xsi:type="configurableObject">
<argument name="class" xsi:type="string">VendorModuleModelDataProvider</argument>
<argument name="name" xsi:type="string">vendor_department_addform_data_source</argument>
<argument name="primaryFieldName" xsi:type="string">department_id</argument>
<argument name="requestFieldName" xsi:type="string">id</argument>
</argument>
<argument name="data" xsi:type="array">
<item name="js_config" xsi:type="array">
<item name="component" xsi:type="string">Magento_Ui/js/form/provider</item>
</item>
</argument>
<settings>
<submitUrl path="vendor/department/save"/>
</settings>
</dataSource>

<fieldset name="department_fieldset">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="label" xsi:type="string" translate="true">Add new department</item>
</item>
</argument>

<!-- This field represents form id and is hidden -->
<field name="department_id">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="visible" xsi:type="boolean">false</item>
<item name="dataType" xsi:type="string">text</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
</item>
</argument>
</field>
<!-- This field has data type 'text' and standard 'input' form element and looks like input -->
<field name="title">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Title</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">title</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="identifier">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Identifier</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">identifier</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="description">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Description</item>
<item name="formElement" xsi:type="string">textarea</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">description</item>
</item>
</argument>
</field>
<field name="sort_order">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Sort order</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">sort_order</item>
<item name="validation" xsi:type="array">
<item name="validate-number" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
<field name="status">
<argument name="data" xsi:type="array">
<item name="options" xsi:type="object">VendorModuleModelDepartmentSourceSelectOption</item>
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">Status</item>
<item name="formElement" xsi:type="string">select</item>
<item name="source" xsi:type="string">jobportal</item>
<item name="dataScope" xsi:type="string">status</item>
<!-- <item name="default" xsi:type="string">0</item> -->
</item>
</argument>
</field>
</fieldset>
</form>


VendorModuleModelDataProvider.php this is use for form data



namespace VendormoduleModel;

use VendormoduleModelResourceModelDepartmentCollectionFactory;

/**
* Class DataProvider
*/
class DataProvider extends MagentoUiDataProviderAbstractDataProvider

/**
* @var CustomModuleModelResourceModelMessagesCollection
*/
protected $collection;

/**
* @var array
*/
protected $loadedData;

/**
* @param string $name
* @param string $primaryFieldName
* @param string $requestFieldName
* @param CollectionFactory $pageCollectionFactory
* @param array $meta
* @param array $data
*/
public function __construct(
$name,
$primaryFieldName,
$requestFieldName,
CollectionFactory $pageCollectionFactory,

array $meta = [],
array $data = []
)
$this->collection = $pageCollectionFactory->create();
parent::__construct($name, $primaryFieldName, $requestFieldName, $meta, $data);
$this->meta = $this->prepareMeta($this->meta);


/**
* Prepares Meta
*
* @param array $meta
* @return array
*/
public function prepareMeta(array $meta)

return $meta;


/**
* Get data
*
* @return array
*/
public function getData()

if (isset($this->loadedData))
return $this->loadedData;

$items = $this->collection->getItems();
/** @var $page CustomModuleModelMessages */
foreach ($items as $page)
$this->loadedData[$page->getId()] = $page->getData();

//echo "<pre>";print_r($this->loadedData);die;
return $this->loadedData;








share|improve this answer














share|improve this answer



share|improve this answer








edited Jan 17 '18 at 13:25

























answered Jan 17 '18 at 13:20









Birjitsinh ZalaBirjitsinh Zala

564115




564115












  • Thank you for your response, But my question is I need to add note to the form field. In that note message I need to pass dynamic values or data. For example <notice> Image size should be equal to some(here I need to pass dynamic value) size</notice>

    – Jaisa
    Jan 17 '18 at 13:24











  • dataprovider.php handle dynamic data

    – Birjitsinh Zala
    Jan 17 '18 at 13:27











  • Please see the updated post

    – Jaisa
    Jan 17 '18 at 13:30











  • <item name="component" xsi:type="string">Namespace_ModuleName/js/form/element/options</item> change using js

    – Birjitsinh Zala
    Jan 17 '18 at 13:48


















  • Thank you for your response, But my question is I need to add note to the form field. In that note message I need to pass dynamic values or data. For example <notice> Image size should be equal to some(here I need to pass dynamic value) size</notice>

    – Jaisa
    Jan 17 '18 at 13:24











  • dataprovider.php handle dynamic data

    – Birjitsinh Zala
    Jan 17 '18 at 13:27











  • Please see the updated post

    – Jaisa
    Jan 17 '18 at 13:30











  • <item name="component" xsi:type="string">Namespace_ModuleName/js/form/element/options</item> change using js

    – Birjitsinh Zala
    Jan 17 '18 at 13:48

















Thank you for your response, But my question is I need to add note to the form field. In that note message I need to pass dynamic values or data. For example <notice> Image size should be equal to some(here I need to pass dynamic value) size</notice>

– Jaisa
Jan 17 '18 at 13:24





Thank you for your response, But my question is I need to add note to the form field. In that note message I need to pass dynamic values or data. For example <notice> Image size should be equal to some(here I need to pass dynamic value) size</notice>

– Jaisa
Jan 17 '18 at 13:24













dataprovider.php handle dynamic data

– Birjitsinh Zala
Jan 17 '18 at 13:27





dataprovider.php handle dynamic data

– Birjitsinh Zala
Jan 17 '18 at 13:27













Please see the updated post

– Jaisa
Jan 17 '18 at 13:30





Please see the updated post

– Jaisa
Jan 17 '18 at 13:30













<item name="component" xsi:type="string">Namespace_ModuleName/js/form/element/options</item> change using js

– Birjitsinh Zala
Jan 17 '18 at 13:48






<item name="component" xsi:type="string">Namespace_ModuleName/js/form/element/options</item> change using js

– Birjitsinh Zala
Jan 17 '18 at 13:48


















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%2f209804%2fhow-do-we-can-give-dynamic-data-for-a-form-field-in-admin-formui-component-in%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

Jet Time Laivasto | Lähteet | Aiheesta muualla | NavigointivalikkoJet Time - The CompanyThe CompanyManagementJet Time aloittaa lauantaina Suomi-rekisterissä olevalla Boeing 737 -koneellaJettime Finland Fleet Details and HistoryJettime Fleet Details and HistoryRegional Jet OÜ takes over ATR production for SASJet Time Returns To Its Core BusinessYhtiön kotisivutlaajentamalla

Olympian arkeologinen museo Sisällysluettelo Historia ja rakennus | Kokoelmat | Lähteet | Aiheesta muualla | Navigointivalikko37°38′36″N, 21°37′46″EInfobox OKArchaeological Museum of Olympia: HistoryArchaeological Museum of Olympia: DescriptionΜουσείο Ιστορίας των Ολυμπιακών Αγώνων της Αρχαιότητας: ΙστορικόArchaeological Museum of Olympia

Äpy Sisällysluettelo Äpyt kautta historian | Esimerkkejä Äpy-huumorista | Katso myös | Kirjallisuutta | Aiheesta muualla | Navigointivalikkowww.äpy.fi