- Posts: 511
- Thank you received: 37
Récupérer les erreurs de la fonction save product
2 years 3 months ago #361670
by Minie
Récupérer les erreurs de la fonction save product was created by Minie
Bonjour,
j'utilise la fonction $productClass->save($product); en front, et celle ci renvoie l'id du produit en cas de succès, et 0 en cas d'échec, j'ai tenté de récupérer le message d'erreur de bien des façon sans succès.
Comment puis-je afficher dans Factory::getApplication()->enqueueMessage() la raison de l'échec svp ?
Merci d'avance
j'utilise la fonction $productClass->save($product); en front, et celle ci renvoie l'id du produit en cas de succès, et 0 en cas d'échec, j'ai tenté de récupérer le message d'erreur de bien des façon sans succès.
Comment puis-je afficher dans Factory::getApplication()->enqueueMessage() la raison de l'échec svp ?
Merci d'avance
Please Log in or Create an account to join the conversation.
2 years 3 months ago #361672
by nicolas
Replied by nicolas on topic Récupérer les erreurs de la fonction save product
Bonjour,
Dans la fonction save, lorsque HikaShop renvoi 0, c'est soit:
- que HikaShop a trouvé un problème lors de la sauvegarde. Dans ce cas, HikaShop utilise déjà enqueueMessage pour afficher un message d'erreur à l'utilisateur. Donc il n'est pas nécessaire de le faire vous-même. Par exemple, si vous voulez changer le product_alias du produit pour un alias qui est déjà utilisé par un autre produit, HikaShop refusera et affichera le message d'erreur sans que vous n'ayez rien à faire.
- un plugin implémentant onBeforeProductCreate ou onBeforeProductUpdate a modifié le paramètre $do à false pour annuler la sauvegarde du produit. Dans ce cas, HikaShop n'a pas connaissance de la raison. HikaShop ne sait même pas quel plugin a fait cela, car le système de plugin de Joomla ne permet pas de connaître cette information. C'est donc normalement au plugin qui annule la sauvegarde de faire l'affichage de l'erreur avec un enqueueMessage vu qu'il est le seul à connaître la raison.
Donc normalement, si c'est vous qui faites un save, vous n'avez pas à faire d'enqueueMessage, sauf pour afficher un message d'erreur générique au cas où aucun message n'est affiché.
Dans la fonction save, lorsque HikaShop renvoi 0, c'est soit:
- que HikaShop a trouvé un problème lors de la sauvegarde. Dans ce cas, HikaShop utilise déjà enqueueMessage pour afficher un message d'erreur à l'utilisateur. Donc il n'est pas nécessaire de le faire vous-même. Par exemple, si vous voulez changer le product_alias du produit pour un alias qui est déjà utilisé par un autre produit, HikaShop refusera et affichera le message d'erreur sans que vous n'ayez rien à faire.
- un plugin implémentant onBeforeProductCreate ou onBeforeProductUpdate a modifié le paramètre $do à false pour annuler la sauvegarde du produit. Dans ce cas, HikaShop n'a pas connaissance de la raison. HikaShop ne sait même pas quel plugin a fait cela, car le système de plugin de Joomla ne permet pas de connaître cette information. C'est donc normalement au plugin qui annule la sauvegarde de faire l'affichage de l'erreur avec un enqueueMessage vu qu'il est le seul à connaître la raison.
Donc normalement, si c'est vous qui faites un save, vous n'avez pas à faire d'enqueueMessage, sauf pour afficher un message d'erreur générique au cas où aucun message n'est affiché.
Please Log in or Create an account to join the conversation.
2 years 3 months ago #361769
by Minie
Replied by Minie on topic Récupérer les erreurs de la fonction save product
Bonjour,
merci pour votre réponse, les messages s'affichent maintenant, je n'ai rien modifié :huh:
merci pour votre réponse, les messages s'affichent maintenant, je n'ai rien modifié :huh:
Please Log in or Create an account to join the conversation.
Time to create page: 0.169 seconds