THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline

#1 multi-vendeurs

(31-07-2015 11:22:48)


Bonjour, je travaille sur Thelia 2.1.3 pour la première fois, et j'essaye d'avoir plusieurs vendeurs donc il s'agit d'une place de marché plutôt qu'une boutique en ligne. Pour cela j'ai créé un profil vendeur à travers les profils d'administration et mon problème actuel est comment ajouter une colonne dans la table des produits pour garder lors de la création d'un produit l'ID de l'administrateur( ayant le profil vendeur) qui l'a créé car je voulais afficher au back office pour chaque vendeur seulement les produits qu'il a créé. Ceci est-il réalisable?Sinon Est ce qu'il est possible de développer une market place avec Thelia 2?

Last edited by Yefa.Hamdi (31-07-2015 11:23:48)

Offline

#2 Re: multi-vendeurs

(31-07-2015 12:59:06)


Tu ne peux pas modifier les tables de base. Enfin, si, en faisant beaucoup d'efforts. Et si jamais tu arrives à faire un truc qui marche, tu te coupe de toutes les mises à jour futures.

La bonne méthode pour ajouter de l'information, est d'écrire un module qui gère une table qui contient les informations spécifiques qui t'intéressent, et qui a un clef étrangère avec la table de base.

Ceci dit, oui, on peut tout à fait développer une marketplace avec Thelia.


OpenStudio Toulouse

Offline

#3 Re: multi-vendeurs

(31-07-2015 16:22:06)


merci pour votre réponse! J'ai déjà pensé au développement d'un module vendeurs et j'ai commencé avec ces lignes dans le fichier schema.xml:

<table name="product_admin_complément" namespace="Vendeurs\Model">
        <column autoIncrement="true" name="product_vendeur_id" primaryKey="true" required="true" type="INTEGER" />
        <foreign-key foreignTable="product" name="fk_product_id" onDelete="CASCADE" onUpdate="RESTRICT">
            <reference foreign="id" local="product_id" />
        </foreign-key>
        <foreign-key foreignTable="admin" name="fk_admin_id" onDelete="CASCADE" onUpdate="RESTRICT">
            <reference foreign="id" local="vendeur_id" />
        </foreign-key>
    </table> 
cette table relie à la fois la table admin et produit, mais je voulais savoir est ce qu'après l'activation du module à partir du back office, cette table dois s'afficher dans la base de donnée comme étant une nouvelle table? Une autre question sVP, pour récupérer l'ID de l'admin qui est actuellement connecté, est ce que la méthode adéquate est getExistingObject() du Administrator_controller?

Last edited by Yefa.Hamdi (31-07-2015 16:34:28)

Offline

#4 Re: multi-vendeurs

(31-07-2015 18:18:17)


Tu dois écrire tes propres contrôleurs dans ton module, et jamais modifier les contrôleurs du core.

En fait, on ne modifie jamais les fichiers du core, tout est extensible dans un module.

Pour récupérer l'ID de l'administrateur dans un contrôleur qui herite de BaseAdminController,  tu utilises $this->getSecurityContext()->getAdminUser()->getId()


OpenStudio Toulouse

Offline

#5 Re: multi-vendeurs

(31-07-2015 18:19:00)


Tu dois écrire tes propres contrôleurs dans ton module, et jamais modifier les contrôleurs du core.

En fait, on ne modifie jamais les fichiers du core, tout est extensible dans un module.

Pour récupérer l'ID de l'administrateur dans un contrôleur (de ton module, donc) qui herite de BaseAdminController,  tu utilises $this->getSecurityContext()->getAdminUser()->getId()


OpenStudio Toulouse

Offline

#6 Re: multi-vendeurs

(07-08-2015 11:23:01)


Sujet déplacé, merci d'utiliser la partie française du forum pour les questions en français


Développeur Web chez OpenStudio
Thelia Module, Thelia School, My GitHub, My Twitter