Deprecated: Constant E_STRICT is deprecated since 8.4, the error level was removed in /home/hybird/newwwwcreme/forum/inc/class_error.php on line 64
Creation de module : Erreur 500 - enregistrement formulaire
Les avertissements suivants se sont produits :
Warning [2] Undefined variable $unreadreports - Line: 21 - File: global.php(961) : eval()'d code PHP 8.5.12 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/global.php(961) : eval()'d code 21 errorHandler->error_callback
/global.php 961 eval
/showthread.php 28 require_once
Warning [2] Undefined property: MyLanguage::$bottomlinks_forumteam - Line: 2 - File: global.php(1047) : eval()'d code PHP 8.5.12 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/global.php(1047) : eval()'d code 2 errorHandler->error_callback
/global.php 1047 eval
/showthread.php 28 require_once




Creation de module : Erreur 500 - enregistrement formulaire
#1
Bonjour,

Je ne peux pas enregistrer une fiche créée avec mon module. Erreur 500.

Je pense avoir suivi la doc exemple correctement Confused .

Si j'essaie de créer un enregistrement directement dans phpmyadmin, j'ai :

Code :
#1452 - Cannot add or update a child row: a foreign key constraint fails (`mabase`.`editors_editor`, CONSTRAINT `editors_editor_cremeentity_ptr_id_xxx_fk_creme_cor` FOREIGN KEY (`cremeentity_ptr_id`) REFERENCES `creme_core_cremeentity` (`id`))


Un peu d'aide me serait bien utile Blush
  Répondre
#2
Bon j'ai trouvé mon erreur.

Comme j'ai changé des noms ou référence par rapport à l'exemple, j'ai oublié de modifier un paramètre.

Dans models/beaver.py


Code :
  def __str__(self):
     return self.name

"name" est à modifier suivant ses paramètres
  Répondre
#3
Citation :Si j'essaie de créer un enregistrement directement dans phpmyadmin [...]

Attention quand même ; les entités sont découpées en 2 parties: la partie CremeEntity pure (table 'creme_core_crementity'), et la table spécifique au type (ex: 'persons_contact'). Les lignes de la seconde table référencent la première, et la première utilise aussi des champ internes (comme celui qui indique le type final -- "Contact" dans mon exemple). Ce n'est donc pas totalement trivial de les créer "à la main" (la commande "python manage.py shell" est là pour ça, et c'est mieux avec 'ipython' d'installé).
  Répondre
#4
Bonjour,

dans l'exemple castor/beaver toute les tables commencent avec "name" en premier champs

Code :
class Beaver(CremeEntity):
   name     = CharField(_('Name'), max_length=100)
   birthday = DateField(_('Birthday'))


Est ce une obligation / une convention ?
  Répondre
#5
Citation :Est ce une obligation / une convention ?

Ni l'un ni l'autre ; c'est juste le cas le plus classique. Après certains types utilisent un champ "title" ; les Contacts ont eux le couple "first_name/last_name".

C'est en général une bonne chose de nommer les fiches, mais vous pourriez tout à fait avoir un usage où c'est inutile/pénible ; vous pourriez aussi avoir un entre deux, comme les Document qui sont capables de déduire leur champ "title" du fichier associé lorsque vous ne leur donnez pas de titre explicitement.
  Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)