Jump to content
le_binr38

ObjectModel => self::HAS_MANY

Recommended Posts

Bonjour,

 

J'utilise prestahsop 1.7 (dernière version)

 

J'ai développé un module pour mon client permettant de créer des "recettes" avec un titre et un descriptif tout simple. La recette s'enregistre bien dans la base de données. Je souhaite maintenant pouvoir attribuer plusieurs produits à ma fiche recette. J'ai donc créé une table nommée "recette_product" avec les champs "id_recette" et "id_product".

 

Dans mon formulaire de la fiche recette j'affiche tous les produits dans un select comme ceci :

 

$this->fields_form = array(
...
array('type' => 'select', 'label' => 'Produits', 'multiple' => true ,'name' => 'products[]','options' => array('query' => $products_list,'id' => 'id_product', 'name' => 'name')),
...
);

Ca fonctionne, je peux bien sélection 1 ou plusieurs produits. Mais l'enregistrement dans la table "recette_product" ne fonctionne pas. J'ai pourtant mis l'association suivant dans mon objetmodel :

 

 


public static $definition = array(
        'table' => 'recette', 'primary' => 'id_recette', 'multilang' => false,
        'fields' => array(
            'titre' => array('type' => self::TYPE_STRING, 'validate' => 'isName', 'size' => 100),
            'descriptif' => array('type' => self::TYPE_HTML),
        ),
        'associations' => array(
            'products' => array('type' => self::HAS_MANY, 'field' => 'id_product', 'object' => 'Product', 'association' => 'recette_product'),
        ),
    );

J'ai l'impression que l'enregistrement ne se déclanche pas car si je mets une table inexistante je n'ai aucun message d'erreur.

 

Quelqu'un aurait-il déjà réussi à faire fonctionner un "HAS_MANY" et s'aurait pourquoi l'enregistrement dans la DB ne fonctionne pas ?

 

Je vous remercie par avance de votre aide.

 

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More