I am looking to create a form at storefront using UI component. When I create xml file in Ui component folder It throwing an error
Fatal error: Call to a member function getRequestFieldName() on null in /opt/lampp/htdocs/magento2.1.7/vendor/magento/module-ui/Component/Form.php on line 61
form.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">
</form>
For Now I just have created a simple form tag to check the working. So, I just want to ask, do Magento allow to create a UI form at storefront.
If yes then what do I need to do. I am on Magento 2.1.7.
Best Answer
I wrote a blog post about adding uiComponents such as admin grid to frontend here http://magefoo.com/building-an-admin-grid-in-the-front-end-of-magento-2/
also it shows you how to build form on frontend with uiComponents here: https://devdocs.magento.com/guides/v2.1/ui_comp_guide/components/ui-form.html
You would add the tag
<uiComponent name="example_name"/>
in your layout file like the example below:The uiComponent will be a new xml file under the app/code/Dford/Geoip/view/frontend/ui_component/ directory called geoip_grid.xml (or the name you named your uiComponent in your tag in layout file
In your di.xml you would create your dataProvider like below