Support Digital Posted July 10, 2021 Share Posted July 10, 2021 (edited) Bonjour tout le monde, (1) J'ai besoin d'ajouter un nouveau champ au sein de la table "orders", un champ de type "string". J'ai donc effectué cette petite requête SQL afin d'ajouter à ma table la nouvelle colonne : ALTER TABLE `ps_orders` ADD `my_new_string` VARCHAR(200) NULL AFTER `date_upd`; Et ces deux propriétés : public $my_new_string; /** * @var string Mon nouveau champ */ public $my_new_string; (2) Tout fonctionne à merveille si je rajoute ma nouvelle entrée au sein du tableau $definition directement depuis la classe classes>order>Order.php : 'my_new_string' => ['type' => self::TYPE_STRING], (3) Je voulais le faire de manière un peu plus propre en supprimant l'étape (2) et en créant une nouvelle classe depuis le fichier override>classes>order>Order.php avec la fonction suivante : public function __construct($id = null, $id_lang = null) { self::$definition['fields']['my_new_string'] = array('type' => self::TYPE_STRING); parent::__construct($id, $id_lang); } Cependant, avec la méthode (3), cela ne fonctionne pas, ma colonne "my_new_string" n'est pas remplie lors d'une commande. Si quelqu'un comprend pourquoi, je suis preneur pour l'explication Merci beaucoup & bon week-end à vous, Edited July 10, 2021 by Support Digital (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted July 10, 2021 Share Posted July 10, 2021 Vous avez supprimé le fichier class_index.php après avoir fait votre override à la mano ? Link to comment Share on other sites More sharing options...
Support Digital Posted July 10, 2021 Author Share Posted July 10, 2021 Merci pour votre réponse @Eolia. Non, du tout, cela peut avoir un impact ? Je vais tester ! Link to comment Share on other sites More sharing options...
Eolia Posted July 10, 2021 Share Posted July 10, 2021 Ben plutôt oui, comme c'est expliqué dans le fichier readme_override.txt^^ Hello, Please read the documentation before trying to override something here. http://doc.prestashop.com/display/PS16/Overriding+default+behaviors Frequently Asked Questions Q: I added an override file but it seems to be ignored by PrestaShop A: You need to trigger the regeneration of the /cache/class_index.php file. This is done simply by deleting the file. It is the same when manually removing an override: in order to reinstate the default behavior, you must delete the /cache/class_index.php file. Sinon elle ne sera jamais prise en compte 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