- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hola de nuevo,
He creado un modulo que muestra un buscador en la home, ese buscador buscara por atributos, pero ahora tengo el problema que el form tiene un action que debe de resolver en
public function getFormAction()
{
return $this->getUrl($this->_storeManager->getStore()->getBaseUrl() . 'index/result', ['_secure' => true]);
}
Index/result
Pero siempre muestra un 404 en esa pagina cuando se hace click en buscar.
Tengo entendido que Magento tiene un routes.xml "etc/frontend/routes.xml" que es el que resuelve la ruta, dentro del Controller/Index/Result.php
y este es mi código en el routes.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
<router id="result">
<route id="result" frontName="result">
<module name="Mnuhell_FormSearchAttributes" />
</route>
</router>
</config>
Y no se si me falta o me sobra algo es mi primer módulo en Magento y voy algo despistado.
Alguien que controle y me pueda hacer ver donde esta el error?
Gracias a todos!!
Solved! Go to Solution.
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
No lo he revisado en detalle pero tu controller result tiene este Namespace:
namespace Mnuhell\FormSearchAttributes\Controller\ResultSearch;
Y debería ser:
namespace Mnuhell\FormSearchAttributes\Controller\Index;
Pruébalo y comenta el resultado.
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Ruta Post de mi modulo muestra 404
Hola @mnuhell,
A riesgo de estar haciendo self-promotion, quizás puedas repasar con este ejemplo (que lleva también a código funcional en GitHub): http://www.damianculotta.com.ar/magento/como-crear-un-frontend-controller-en-magento2
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Ruta Post de mi modulo muestra 404
Gracias @Damian Culotta voy a revisarlo a ver si me falta algo, otra cosa, el módulo lo tengo activado en local, me muestra el Form en la home, pero cuando hago deploy al servidor de PRE no se activa y no lo muestra, ¿Sabes si hay que hacer algo para para activar los módulos en el servidor?
He sustituido el archivo config.php que es donde le dice que el modulo este activado y aun así no me lo detecta ni en el BackEnd.
Gracias!
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Ruta Post de mi modulo muestra 404
Hola @mnuhell,
Probablemente deberías activar manualmente el módulo en el servidor. Dependiendo de algunos factores, no se sincroniza qué módulos están activos y cuáles no.
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Ruta Post de mi modulo muestra 404
Hola @Damian Culotta en el System->advance->advance no me aparece el modulo, y el el archivo config.php del servidor lo tengo activado.
Hay otra manera de activarlo manualmente?
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Ruta Post de mi modulo muestra 404
@Damian Culotta En el tutorial que has pasado, no tengo problema, el problema lo tengo cuando el action del form tiene que apuntar al controlador Controller/Index/Result.php, no lo resuelve la ruta ``` /formsearchattributes/index/result/ ``` Cuando hago submit.
Tengo un die en la función execute() pero siempre me devuelve 404.
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Ruta Post de mi modulo muestra 404
Hola @mnuhell,
Debería ver todo el código, no sabría decirte porque estaría adivinando.
Se que el código que te he mostrado funciona, pero no se me ocurre qué puede suceder.
¿Puedes ejecutar en la consola este comando?
bin/magento module:status
Te dirá qué modulo esta activo y cuales no.
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Ruta Post de mi modulo muestra 404
@Damian Culotta No te lo vas a crear, pero el archivo registration.php lo tenía como Registration.php con la R mayúscula.
Ya esta solucionado!!
Ahora me falta poder ver porque el action del formulario no me redirige al controllador result y me da error 404.
te adjunto el modulo por dropbox
https://www.dropbox.com/s/rs09igerwx6ah7q/Mnuhell.zip?dl=0
A ver si ves porque no me funciona.
Gracias
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
No lo he revisado en detalle pero tu controller result tiene este Namespace:
namespace Mnuhell\FormSearchAttributes\Controller\ResultSearch;
Y debería ser:
namespace Mnuhell\FormSearchAttributes\Controller\Index;
Pruébalo y comenta el resultado.
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Ruta Post de mi modulo muestra 404
Gracias @Damian Culotta eso era, ahora muestra el mensaje de la función execute, un paso mas ahora ya funciona y no muestra el error.
Muchas Gracias!!