debora_rojas Posted September 12, 2020 Share Posted September 12, 2020 hola quien me puede ayudar, estoy intentando agregar campos al formulario de registro en el archivo overrider/CustomerFormatter.php y para no copiar todo el script del archivo original hago un extend del archivo, pero me arroja este mensaje. quizas no se que tengo que declarar (1/1) ClassNotFoundException Attempted to load class "CustomerFormatterCore" from the global namespace. Did you forget a "use" statement? Link to comment Share on other sites More sharing options...
debora_rojas Posted September 14, 2020 Author Share Posted September 14, 2020 en la version 1.7.6.2 los tutoriales de versiones pasadas no funcionan, alguien tiene idea de que puede ser? no hay suficiente informacion de prestashop para los errores Link to comment Share on other sites More sharing options...
ventura Posted September 14, 2020 Share Posted September 14, 2020 https://build.prestashop.com/news/prestashop-1-7-faq/#can-developers-still-use-overrides-in-17 Link to comment Share on other sites More sharing options...
debora_rojas Posted September 14, 2020 Author Share Posted September 14, 2020 gracias por su repuesta, pero esto no me saca de mi duda, porque practicamente me dice que invalida la clase por que es heredad, lo que quiero saber es como lo soluciono. Link to comment Share on other sites More sharing options...
ventura Posted September 14, 2020 Share Posted September 14, 2020 Buscando un poco por el foro puedes llegar a información sobre el tema. Básicamente ya no se puede sobreescribir archivos del core como se hacía hasta la version 1.7.4. En estos modelos ya no hay compatibilidad y se espera que en breve deje de serlo con los restantes SqlRequest Customer Language Currency WebserviceKey Meta Category RootCategory Contact CmsPage CmsPageCategory Tax Manufacturer Employee Profile ManufacturerAddress A partir de ese versionado será necesario hacerlo mediante hooks específico y nuevas directivas CQRS aplicadas para ello con la implantación de Symphony. Lo que si se puede seguir utilizando de momento es poder sobreescribir las classes principales para añadir nuevo registros en class principal, eg /modules/moduloFields/override/classes/Customer.php use PrestaShop\PrestaShop\Adapter\ServiceLocator; use PrestaShop\PrestaShop\Adapter\CoreException; /*** * Class CustomerCore */ class Customer extends CustomerCore { public $newfield; public function __construct($id = null) { self::$definition['fields']['newfield'] = array('type' => self::TYPE_STRING, 'validate' => 'isGenericName'); parent::__construct($id); } } Utilizando en el .php principal del módulo, los use use Doctrine\DBAL\Query\QueryBuilder; use Doctrine\ORM\EntityManager; use Doctrine\ORM\EntityRepository; use PrestaShop\Customerfield\Entity\CustomerCustomField; use PrestaShop\PrestaShop\Core\Grid\Column\Type\DataColumn; use PrestaShop\PrestaShop\Core\Grid\Definition\GridDefinitionInterface; use PrestaShop\PrestaShop\Core\Grid\Filter\Filter; use PrestaShop\PrestaShop\Core\Search\Filters\CustomerFilters; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\FormBuilderInterface; Y hooks necesarios displayCustomerAccountForm additionalCustomerFormFields actionCustomerAccountAdd actionCustomerAccountUpdate actionAfterCreateCustomerFormHandler actionAfterUpdateCustomerFormHandler actionCustomerGridDefinitionModifier actionCustomerGridQueryBuilderModifier actionCustomerFormBuilderModifier Esta la opción de hacerlo desde un módulo o directamente sobreescribiendo los archivos necesarios del source (src) 1 Link to comment Share on other sites More sharing options...
debora_rojas Posted September 18, 2020 Author Share Posted September 18, 2020 agradezco tu repuesta, pero necesito crear la funcion de los 9 hook para agregar campos en el formulario? lo siento soy nueva con prestashop, tu aclaracion es de mucha ayuda para mi. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now