Custom Admin Edit form not displayedI created a custom module ,but getting error, not able to figure out what...

"listening to me about as much as you're listening to this pole here"

Can a planet have a different gravitational pull depending on its location in orbit around its sun?

Ideas for 3rd eye abilities

Why did the Germans forbid the possession of pet pigeons in Rostov-on-Don in 1941?

How to move the player while also allowing forces to affect it

Copycat chess is back

Why is the design of haulage companies so “special”?

How can I fix this gap between bookcases I made?

extract characters between two commas?

"My colleague's body is amazing"

Why do UK politicians seemingly ignore opinion polls on Brexit?

How to answer pointed "are you quitting" questioning when I don't want them to suspect

Is domain driven design an anti-SQL pattern?

Is every set a filtered colimit of finite sets?

Why do we use polarized capacitors?

Lied on resume at previous job

Does it makes sense to buy a new cycle to learn riding?

Are cabin dividers used to "hide" the flex of the airplane?

What do the Banks children have against barley water?

How to manage monthly salary

What happens when a metallic dragon and a chromatic dragon mate?

Shall I use personal or official e-mail account when registering to external websites for work purpose?

Does bootstrapped regression allow for inference?

Typesetting a double Over Dot on top of a symbol



Custom Admin Edit form not displayed


I created a custom module ,but getting error, not able to figure out what the error is about. How to get out of this error?Magento 2 : Problem while adding custom button order view page?Magento 2 admin form controller errorMagento 2 Add new field to Magento_User admin formMagento 2: Plugin class does not existForm is not displayed on panel admin Magento 2Magento offline custom Payment method with drop down listMagento 2 Create dynamic array From different Model Collection to use in multi select in gridmagento 2.2.5: Adding Custom Attribute to Customer Edit Form in AdminMagento 2.3 Can't view module's front end page output?






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







0















I have created a custom module using MagentoBackendBlockWidgetFormContainer form with Magento2.3 and I am facing issue while edit form is not showing in Magento Cloud, But local environment is working fine.



I am testing, the Block action is loaded, But the Edit/Form.php not loading.



enter image description here



Below is my code.



The Controller [import.php]



 <?php
namespace TestapiControllerAdminhtmlAdList;

use MagentoFrameworkControllerResultFactory;

class import extends MagentoBackendAppAction
{
/**
* @var MagentoFrameworkRegistry
*/
private $coreRegistry;
/**
* @var TestapiModelAdsTableFactory
*/
private $adsTableFactory;

/**
* @param MagentoBackendAppActionContext $context
* @param MagentoFrameworkRegistry $coreRegistry,
* @param TestapiModelAdsTableFactory $adsTableFactory
*/
public function __construct(
MagentoBackendAppActionContext $context,
MagentoFrameworkRegistry $coreRegistry,
TestapiModelAdsTableFactory $adsTableFactory
) {
parent::__construct($context);
$this->coreRegistry = $coreRegistry;
$this->adsTableFactory = $adsTableFactory;
}

/**
* Mapped Grid List page.
* @return MagentoBackendModelViewResultPage
*/
public function execute()
{
$rowId = (int) $this->getRequest()->getParam('id');
$rowData = $this->adsTableFactory->create();
/** @var MagentoBackendModelViewResultPage $resultPage */
if ($rowId) {
$rowData = $rowData->load($rowId);
$rowName = $rowData->getName();
if (!$rowData->getId()) {
$this->messageManager->addError(__('row data no longer exist.'));
$this->_redirect('test_app/AdList/rowdata');
return;
}
}
$this->coreRegistry->register('row_data', $rowData);
$resultPage = $this->resultFactory->create(ResultFactory::TYPE_PAGE);
$title = $rowId ? __('Edit Row').$rowName : __('Add Row');
$resultPage->getConfig()->getTitle()->prepend($title);
return $resultPage;
}

protected function _isAllowed()
{
return $this->_authorization->isAllowed('Test_Api::test_app');
}
}
?>


Layout XML [test_app_adlist_import.xml]



<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
<referenceContainer name="content">
<block class="TestApiBlockAdminhtmlAdListCustomBlock" cacheable="false" name="test_app_adlist_import" />
</referenceContainer>
</body>
</page>


The Block Action [CustomBlock.php]



<?php
namespace TestapiBlockAdminhtmlAdList;

class CustomBlock extends MagentoBackendBlockWidgetFormContainer
{

protected $_coreRegistry = null;

/**
* @param MagentoBackendBlockWidgetContext $context
* @param MagentoFrameworkRegistry $registry
* @param array $data
*/
public function __construct(
MagentoBackendBlockWidgetContext $context,
MagentoFrameworkRegistry $registry,
array $data = []
) {
$this->_coreRegistry = $registry;
parent::__construct($context, $data);
}

/**
* Initialize form
* Add standard buttons
* Add "Save and Continue" button
*
* @return void
*/
protected function _construct()
{
$this->_objectId = 'id';
$this->_blockGroup = 'Test_Api';
$this->_controller = 'adminhtml_adlist';
parent::_construct();

if ($this->_isAllowedAction('Test_Api::test_app')) {
$this->buttonList->update('save', 'label', __('Save'));
} else {
$this->buttonList->remove('save');
}
$this->buttonList->remove('reset');
}

/**
* Getter for form header text
*
* @return MagentoFrameworkPhrase
*/
public function getHeaderText()
{
return __('Add RoW Data');
}


/**
 * Check permission for passed action. *
 * @param string $resourceId
 *
* @return bool
 */
protected function _isAllowedAction($resourceId)
{
return $this->_authorization->isAllowed($resourceId);
}


/**
* Get form action URL.
*
* @return string
*/
public function getFormActionUrl()
{
if ($this->hasFormActionUrl()) {
return $this->getData('form_action_url');
}

return $this->getUrl('*/*/save');
}

}
?>


The Edit Form [Form.php]



<?php
namespace TestapiBlockAdminhtmlAdListEdit;
/**
 * Adminhtml Add New Row Form.
 */
class Form extends MagentoBackendBlockWidgetFormGeneric
{
/**
* @var MagentoStoreModelSystemStore
*/
protected $_systemStore;
/**
* @param MagentoBackendBlockTemplateContext $context,
* @param MagentoFrameworkRegistry $registry,
* @param MagentoFrameworkDataFormFactory $formFactory,
* @param MagentoCmsModelWysiwygConfig $wysiwygConfig,
*/
public function __construct(
MagentoBackendBlockTemplateContext $context,
MagentoFrameworkRegistry $registry,
MagentoFrameworkDataFormFactory $formFactory,
MagentoCmsModelWysiwygConfig $wysiwygConfig,
array $data = []
) {
$this->_wysiwygConfig = $wysiwygConfig;
parent::__construct($context, $registry, $formFactory, $data);
}
/**
* Prepare form.
*
* @return $this
*/
protected function _prepareForm()
{


$dateFormat = $this->_localeDate->getDateFormat(IntlDateFormatter::SHORT);
$model = $this->_coreRegistry->registry('row_data');
$form = $this->_formFactory->create(
['data' => [
'id' => 'edit_form',
'enctype' => 'multipart/form-data',
'action' => $this->getData('action'),
'method' => 'post'
]
]
);
$form->setHtmlIdPrefix('test_');
$fieldset = $form->addFieldset(
'base_fieldset',
['legend' => __('Add Row'), 'class' => 'fieldset-wide']
);
$fieldset->addField(
'name',
'text',
[
'name' => 'name',
'label' => __('Name'),
'id' => 'name',
'title' => __('name'),
'class' => 'required-entry',
'required' => true,
]
);
$form->setUseContainer(true);
$this->setForm($form);
return parent::_prepareForm();
}
}

?>








share







New contributor




Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.



























    0















    I have created a custom module using MagentoBackendBlockWidgetFormContainer form with Magento2.3 and I am facing issue while edit form is not showing in Magento Cloud, But local environment is working fine.



    I am testing, the Block action is loaded, But the Edit/Form.php not loading.



    enter image description here



    Below is my code.



    The Controller [import.php]



     <?php
    namespace TestapiControllerAdminhtmlAdList;

    use MagentoFrameworkControllerResultFactory;

    class import extends MagentoBackendAppAction
    {
    /**
    * @var MagentoFrameworkRegistry
    */
    private $coreRegistry;
    /**
    * @var TestapiModelAdsTableFactory
    */
    private $adsTableFactory;

    /**
    * @param MagentoBackendAppActionContext $context
    * @param MagentoFrameworkRegistry $coreRegistry,
    * @param TestapiModelAdsTableFactory $adsTableFactory
    */
    public function __construct(
    MagentoBackendAppActionContext $context,
    MagentoFrameworkRegistry $coreRegistry,
    TestapiModelAdsTableFactory $adsTableFactory
    ) {
    parent::__construct($context);
    $this->coreRegistry = $coreRegistry;
    $this->adsTableFactory = $adsTableFactory;
    }

    /**
    * Mapped Grid List page.
    * @return MagentoBackendModelViewResultPage
    */
    public function execute()
    {
    $rowId = (int) $this->getRequest()->getParam('id');
    $rowData = $this->adsTableFactory->create();
    /** @var MagentoBackendModelViewResultPage $resultPage */
    if ($rowId) {
    $rowData = $rowData->load($rowId);
    $rowName = $rowData->getName();
    if (!$rowData->getId()) {
    $this->messageManager->addError(__('row data no longer exist.'));
    $this->_redirect('test_app/AdList/rowdata');
    return;
    }
    }
    $this->coreRegistry->register('row_data', $rowData);
    $resultPage = $this->resultFactory->create(ResultFactory::TYPE_PAGE);
    $title = $rowId ? __('Edit Row').$rowName : __('Add Row');
    $resultPage->getConfig()->getTitle()->prepend($title);
    return $resultPage;
    }

    protected function _isAllowed()
    {
    return $this->_authorization->isAllowed('Test_Api::test_app');
    }
    }
    ?>


    Layout XML [test_app_adlist_import.xml]



    <?xml version="1.0"?>
    <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
    <referenceContainer name="content">
    <block class="TestApiBlockAdminhtmlAdListCustomBlock" cacheable="false" name="test_app_adlist_import" />
    </referenceContainer>
    </body>
    </page>


    The Block Action [CustomBlock.php]



    <?php
    namespace TestapiBlockAdminhtmlAdList;

    class CustomBlock extends MagentoBackendBlockWidgetFormContainer
    {

    protected $_coreRegistry = null;

    /**
    * @param MagentoBackendBlockWidgetContext $context
    * @param MagentoFrameworkRegistry $registry
    * @param array $data
    */
    public function __construct(
    MagentoBackendBlockWidgetContext $context,
    MagentoFrameworkRegistry $registry,
    array $data = []
    ) {
    $this->_coreRegistry = $registry;
    parent::__construct($context, $data);
    }

    /**
    * Initialize form
    * Add standard buttons
    * Add "Save and Continue" button
    *
    * @return void
    */
    protected function _construct()
    {
    $this->_objectId = 'id';
    $this->_blockGroup = 'Test_Api';
    $this->_controller = 'adminhtml_adlist';
    parent::_construct();

    if ($this->_isAllowedAction('Test_Api::test_app')) {
    $this->buttonList->update('save', 'label', __('Save'));
    } else {
    $this->buttonList->remove('save');
    }
    $this->buttonList->remove('reset');
    }

    /**
    * Getter for form header text
    *
    * @return MagentoFrameworkPhrase
    */
    public function getHeaderText()
    {
    return __('Add RoW Data');
    }


    /**
     * Check permission for passed action. *
     * @param string $resourceId
     *
    * @return bool
     */
    protected function _isAllowedAction($resourceId)
    {
    return $this->_authorization->isAllowed($resourceId);
    }


    /**
    * Get form action URL.
    *
    * @return string
    */
    public function getFormActionUrl()
    {
    if ($this->hasFormActionUrl()) {
    return $this->getData('form_action_url');
    }

    return $this->getUrl('*/*/save');
    }

    }
    ?>


    The Edit Form [Form.php]



    <?php
    namespace TestapiBlockAdminhtmlAdListEdit;
    /**
     * Adminhtml Add New Row Form.
     */
    class Form extends MagentoBackendBlockWidgetFormGeneric
    {
    /**
    * @var MagentoStoreModelSystemStore
    */
    protected $_systemStore;
    /**
    * @param MagentoBackendBlockTemplateContext $context,
    * @param MagentoFrameworkRegistry $registry,
    * @param MagentoFrameworkDataFormFactory $formFactory,
    * @param MagentoCmsModelWysiwygConfig $wysiwygConfig,
    */
    public function __construct(
    MagentoBackendBlockTemplateContext $context,
    MagentoFrameworkRegistry $registry,
    MagentoFrameworkDataFormFactory $formFactory,
    MagentoCmsModelWysiwygConfig $wysiwygConfig,
    array $data = []
    ) {
    $this->_wysiwygConfig = $wysiwygConfig;
    parent::__construct($context, $registry, $formFactory, $data);
    }
    /**
    * Prepare form.
    *
    * @return $this
    */
    protected function _prepareForm()
    {


    $dateFormat = $this->_localeDate->getDateFormat(IntlDateFormatter::SHORT);
    $model = $this->_coreRegistry->registry('row_data');
    $form = $this->_formFactory->create(
    ['data' => [
    'id' => 'edit_form',
    'enctype' => 'multipart/form-data',
    'action' => $this->getData('action'),
    'method' => 'post'
    ]
    ]
    );
    $form->setHtmlIdPrefix('test_');
    $fieldset = $form->addFieldset(
    'base_fieldset',
    ['legend' => __('Add Row'), 'class' => 'fieldset-wide']
    );
    $fieldset->addField(
    'name',
    'text',
    [
    'name' => 'name',
    'label' => __('Name'),
    'id' => 'name',
    'title' => __('name'),
    'class' => 'required-entry',
    'required' => true,
    ]
    );
    $form->setUseContainer(true);
    $this->setForm($form);
    return parent::_prepareForm();
    }
    }

    ?>








    share







    New contributor




    Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.























      0












      0








      0








      I have created a custom module using MagentoBackendBlockWidgetFormContainer form with Magento2.3 and I am facing issue while edit form is not showing in Magento Cloud, But local environment is working fine.



      I am testing, the Block action is loaded, But the Edit/Form.php not loading.



      enter image description here



      Below is my code.



      The Controller [import.php]



       <?php
      namespace TestapiControllerAdminhtmlAdList;

      use MagentoFrameworkControllerResultFactory;

      class import extends MagentoBackendAppAction
      {
      /**
      * @var MagentoFrameworkRegistry
      */
      private $coreRegistry;
      /**
      * @var TestapiModelAdsTableFactory
      */
      private $adsTableFactory;

      /**
      * @param MagentoBackendAppActionContext $context
      * @param MagentoFrameworkRegistry $coreRegistry,
      * @param TestapiModelAdsTableFactory $adsTableFactory
      */
      public function __construct(
      MagentoBackendAppActionContext $context,
      MagentoFrameworkRegistry $coreRegistry,
      TestapiModelAdsTableFactory $adsTableFactory
      ) {
      parent::__construct($context);
      $this->coreRegistry = $coreRegistry;
      $this->adsTableFactory = $adsTableFactory;
      }

      /**
      * Mapped Grid List page.
      * @return MagentoBackendModelViewResultPage
      */
      public function execute()
      {
      $rowId = (int) $this->getRequest()->getParam('id');
      $rowData = $this->adsTableFactory->create();
      /** @var MagentoBackendModelViewResultPage $resultPage */
      if ($rowId) {
      $rowData = $rowData->load($rowId);
      $rowName = $rowData->getName();
      if (!$rowData->getId()) {
      $this->messageManager->addError(__('row data no longer exist.'));
      $this->_redirect('test_app/AdList/rowdata');
      return;
      }
      }
      $this->coreRegistry->register('row_data', $rowData);
      $resultPage = $this->resultFactory->create(ResultFactory::TYPE_PAGE);
      $title = $rowId ? __('Edit Row').$rowName : __('Add Row');
      $resultPage->getConfig()->getTitle()->prepend($title);
      return $resultPage;
      }

      protected function _isAllowed()
      {
      return $this->_authorization->isAllowed('Test_Api::test_app');
      }
      }
      ?>


      Layout XML [test_app_adlist_import.xml]



      <?xml version="1.0"?>
      <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
      <body>
      <referenceContainer name="content">
      <block class="TestApiBlockAdminhtmlAdListCustomBlock" cacheable="false" name="test_app_adlist_import" />
      </referenceContainer>
      </body>
      </page>


      The Block Action [CustomBlock.php]



      <?php
      namespace TestapiBlockAdminhtmlAdList;

      class CustomBlock extends MagentoBackendBlockWidgetFormContainer
      {

      protected $_coreRegistry = null;

      /**
      * @param MagentoBackendBlockWidgetContext $context
      * @param MagentoFrameworkRegistry $registry
      * @param array $data
      */
      public function __construct(
      MagentoBackendBlockWidgetContext $context,
      MagentoFrameworkRegistry $registry,
      array $data = []
      ) {
      $this->_coreRegistry = $registry;
      parent::__construct($context, $data);
      }

      /**
      * Initialize form
      * Add standard buttons
      * Add "Save and Continue" button
      *
      * @return void
      */
      protected function _construct()
      {
      $this->_objectId = 'id';
      $this->_blockGroup = 'Test_Api';
      $this->_controller = 'adminhtml_adlist';
      parent::_construct();

      if ($this->_isAllowedAction('Test_Api::test_app')) {
      $this->buttonList->update('save', 'label', __('Save'));
      } else {
      $this->buttonList->remove('save');
      }
      $this->buttonList->remove('reset');
      }

      /**
      * Getter for form header text
      *
      * @return MagentoFrameworkPhrase
      */
      public function getHeaderText()
      {
      return __('Add RoW Data');
      }


      /**
       * Check permission for passed action. *
       * @param string $resourceId
       *
      * @return bool
       */
      protected function _isAllowedAction($resourceId)
      {
      return $this->_authorization->isAllowed($resourceId);
      }


      /**
      * Get form action URL.
      *
      * @return string
      */
      public function getFormActionUrl()
      {
      if ($this->hasFormActionUrl()) {
      return $this->getData('form_action_url');
      }

      return $this->getUrl('*/*/save');
      }

      }
      ?>


      The Edit Form [Form.php]



      <?php
      namespace TestapiBlockAdminhtmlAdListEdit;
      /**
       * Adminhtml Add New Row Form.
       */
      class Form extends MagentoBackendBlockWidgetFormGeneric
      {
      /**
      * @var MagentoStoreModelSystemStore
      */
      protected $_systemStore;
      /**
      * @param MagentoBackendBlockTemplateContext $context,
      * @param MagentoFrameworkRegistry $registry,
      * @param MagentoFrameworkDataFormFactory $formFactory,
      * @param MagentoCmsModelWysiwygConfig $wysiwygConfig,
      */
      public function __construct(
      MagentoBackendBlockTemplateContext $context,
      MagentoFrameworkRegistry $registry,
      MagentoFrameworkDataFormFactory $formFactory,
      MagentoCmsModelWysiwygConfig $wysiwygConfig,
      array $data = []
      ) {
      $this->_wysiwygConfig = $wysiwygConfig;
      parent::__construct($context, $registry, $formFactory, $data);
      }
      /**
      * Prepare form.
      *
      * @return $this
      */
      protected function _prepareForm()
      {


      $dateFormat = $this->_localeDate->getDateFormat(IntlDateFormatter::SHORT);
      $model = $this->_coreRegistry->registry('row_data');
      $form = $this->_formFactory->create(
      ['data' => [
      'id' => 'edit_form',
      'enctype' => 'multipart/form-data',
      'action' => $this->getData('action'),
      'method' => 'post'
      ]
      ]
      );
      $form->setHtmlIdPrefix('test_');
      $fieldset = $form->addFieldset(
      'base_fieldset',
      ['legend' => __('Add Row'), 'class' => 'fieldset-wide']
      );
      $fieldset->addField(
      'name',
      'text',
      [
      'name' => 'name',
      'label' => __('Name'),
      'id' => 'name',
      'title' => __('name'),
      'class' => 'required-entry',
      'required' => true,
      ]
      );
      $form->setUseContainer(true);
      $this->setForm($form);
      return parent::_prepareForm();
      }
      }

      ?>








      share







      New contributor




      Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.












      I have created a custom module using MagentoBackendBlockWidgetFormContainer form with Magento2.3 and I am facing issue while edit form is not showing in Magento Cloud, But local environment is working fine.



      I am testing, the Block action is loaded, But the Edit/Form.php not loading.



      enter image description here



      Below is my code.



      The Controller [import.php]



       <?php
      namespace TestapiControllerAdminhtmlAdList;

      use MagentoFrameworkControllerResultFactory;

      class import extends MagentoBackendAppAction
      {
      /**
      * @var MagentoFrameworkRegistry
      */
      private $coreRegistry;
      /**
      * @var TestapiModelAdsTableFactory
      */
      private $adsTableFactory;

      /**
      * @param MagentoBackendAppActionContext $context
      * @param MagentoFrameworkRegistry $coreRegistry,
      * @param TestapiModelAdsTableFactory $adsTableFactory
      */
      public function __construct(
      MagentoBackendAppActionContext $context,
      MagentoFrameworkRegistry $coreRegistry,
      TestapiModelAdsTableFactory $adsTableFactory
      ) {
      parent::__construct($context);
      $this->coreRegistry = $coreRegistry;
      $this->adsTableFactory = $adsTableFactory;
      }

      /**
      * Mapped Grid List page.
      * @return MagentoBackendModelViewResultPage
      */
      public function execute()
      {
      $rowId = (int) $this->getRequest()->getParam('id');
      $rowData = $this->adsTableFactory->create();
      /** @var MagentoBackendModelViewResultPage $resultPage */
      if ($rowId) {
      $rowData = $rowData->load($rowId);
      $rowName = $rowData->getName();
      if (!$rowData->getId()) {
      $this->messageManager->addError(__('row data no longer exist.'));
      $this->_redirect('test_app/AdList/rowdata');
      return;
      }
      }
      $this->coreRegistry->register('row_data', $rowData);
      $resultPage = $this->resultFactory->create(ResultFactory::TYPE_PAGE);
      $title = $rowId ? __('Edit Row').$rowName : __('Add Row');
      $resultPage->getConfig()->getTitle()->prepend($title);
      return $resultPage;
      }

      protected function _isAllowed()
      {
      return $this->_authorization->isAllowed('Test_Api::test_app');
      }
      }
      ?>


      Layout XML [test_app_adlist_import.xml]



      <?xml version="1.0"?>
      <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
      <body>
      <referenceContainer name="content">
      <block class="TestApiBlockAdminhtmlAdListCustomBlock" cacheable="false" name="test_app_adlist_import" />
      </referenceContainer>
      </body>
      </page>


      The Block Action [CustomBlock.php]



      <?php
      namespace TestapiBlockAdminhtmlAdList;

      class CustomBlock extends MagentoBackendBlockWidgetFormContainer
      {

      protected $_coreRegistry = null;

      /**
      * @param MagentoBackendBlockWidgetContext $context
      * @param MagentoFrameworkRegistry $registry
      * @param array $data
      */
      public function __construct(
      MagentoBackendBlockWidgetContext $context,
      MagentoFrameworkRegistry $registry,
      array $data = []
      ) {
      $this->_coreRegistry = $registry;
      parent::__construct($context, $data);
      }

      /**
      * Initialize form
      * Add standard buttons
      * Add "Save and Continue" button
      *
      * @return void
      */
      protected function _construct()
      {
      $this->_objectId = 'id';
      $this->_blockGroup = 'Test_Api';
      $this->_controller = 'adminhtml_adlist';
      parent::_construct();

      if ($this->_isAllowedAction('Test_Api::test_app')) {
      $this->buttonList->update('save', 'label', __('Save'));
      } else {
      $this->buttonList->remove('save');
      }
      $this->buttonList->remove('reset');
      }

      /**
      * Getter for form header text
      *
      * @return MagentoFrameworkPhrase
      */
      public function getHeaderText()
      {
      return __('Add RoW Data');
      }


      /**
       * Check permission for passed action. *
       * @param string $resourceId
       *
      * @return bool
       */
      protected function _isAllowedAction($resourceId)
      {
      return $this->_authorization->isAllowed($resourceId);
      }


      /**
      * Get form action URL.
      *
      * @return string
      */
      public function getFormActionUrl()
      {
      if ($this->hasFormActionUrl()) {
      return $this->getData('form_action_url');
      }

      return $this->getUrl('*/*/save');
      }

      }
      ?>


      The Edit Form [Form.php]



      <?php
      namespace TestapiBlockAdminhtmlAdListEdit;
      /**
       * Adminhtml Add New Row Form.
       */
      class Form extends MagentoBackendBlockWidgetFormGeneric
      {
      /**
      * @var MagentoStoreModelSystemStore
      */
      protected $_systemStore;
      /**
      * @param MagentoBackendBlockTemplateContext $context,
      * @param MagentoFrameworkRegistry $registry,
      * @param MagentoFrameworkDataFormFactory $formFactory,
      * @param MagentoCmsModelWysiwygConfig $wysiwygConfig,
      */
      public function __construct(
      MagentoBackendBlockTemplateContext $context,
      MagentoFrameworkRegistry $registry,
      MagentoFrameworkDataFormFactory $formFactory,
      MagentoCmsModelWysiwygConfig $wysiwygConfig,
      array $data = []
      ) {
      $this->_wysiwygConfig = $wysiwygConfig;
      parent::__construct($context, $registry, $formFactory, $data);
      }
      /**
      * Prepare form.
      *
      * @return $this
      */
      protected function _prepareForm()
      {


      $dateFormat = $this->_localeDate->getDateFormat(IntlDateFormatter::SHORT);
      $model = $this->_coreRegistry->registry('row_data');
      $form = $this->_formFactory->create(
      ['data' => [
      'id' => 'edit_form',
      'enctype' => 'multipart/form-data',
      'action' => $this->getData('action'),
      'method' => 'post'
      ]
      ]
      );
      $form->setHtmlIdPrefix('test_');
      $fieldset = $form->addFieldset(
      'base_fieldset',
      ['legend' => __('Add Row'), 'class' => 'fieldset-wide']
      );
      $fieldset->addField(
      'name',
      'text',
      [
      'name' => 'name',
      'label' => __('Name'),
      'id' => 'name',
      'title' => __('name'),
      'class' => 'required-entry',
      'required' => true,
      ]
      );
      $form->setUseContainer(true);
      $this->setForm($form);
      return parent::_prepareForm();
      }
      }

      ?>






      magento2 blocks adminhtml adminform edit





      share







      New contributor




      Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.










      share







      New contributor




      Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      share



      share






      New contributor




      Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 4 mins ago









      Daniel LoDaniel Lo

      1




      1




      New contributor




      Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      Daniel Lo is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






















          1 Answer
          1






          active

          oldest

          votes


















          0














          Magento module name should start with Capital letter. In your case, this is api. Change this to Api. Also your namespace should change. Ex.




          namespace TestApiBlockAdminhtmlAdListEdit;




          Change this for all class.





          share
























            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
            });


            }
            });






            Daniel Lo is a new contributor. Be nice, and check out our Code of Conduct.










            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f269262%2fcustom-admin-edit-form-not-displayed%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














            Magento module name should start with Capital letter. In your case, this is api. Change this to Api. Also your namespace should change. Ex.




            namespace TestApiBlockAdminhtmlAdListEdit;




            Change this for all class.





            share




























              0














              Magento module name should start with Capital letter. In your case, this is api. Change this to Api. Also your namespace should change. Ex.




              namespace TestApiBlockAdminhtmlAdListEdit;




              Change this for all class.





              share


























                0












                0








                0







                Magento module name should start with Capital letter. In your case, this is api. Change this to Api. Also your namespace should change. Ex.




                namespace TestApiBlockAdminhtmlAdListEdit;




                Change this for all class.





                share













                Magento module name should start with Capital letter. In your case, this is api. Change this to Api. Also your namespace should change. Ex.




                namespace TestApiBlockAdminhtmlAdListEdit;




                Change this for all class.






                share











                share


                share










                answered 8 secs ago









                Sohel RanaSohel Rana

                23.1k34461




                23.1k34461






















                    Daniel Lo is a new contributor. Be nice, and check out our Code of Conduct.










                    draft saved

                    draft discarded


















                    Daniel Lo is a new contributor. Be nice, and check out our Code of Conduct.













                    Daniel Lo is a new contributor. Be nice, and check out our Code of Conduct.












                    Daniel Lo is a new contributor. Be nice, and check out our Code of Conduct.
















                    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%2f269262%2fcustom-admin-edit-form-not-displayed%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

                    “%fieldName is a required field.”, in Magento2 REST API Call for GET Method Type The Next...

                    How to change City field to a dropdown in Checkout step Magento 2Magento 2 : How to change UI field(s)...

                    變成蝙蝠會怎樣? 參考資料 外部連結 导航菜单Thomas Nagel, "What is it like to be a...