Quand tu créé un Advert, je support sur c'est la table oc_advert qui est remplie ?
/**
* @ORM\Table(name="oc_advert")
* @ORM\Entity(repositoryClass="OC\PlatformBundle\Repository\AdvertRepository")
*/
class Advert
/**
* @ORM\Table(name="oc_image")
* @ORM\Entity
*/
class Image
Que oc_advert existe c'est normal comme indiqué dans l'entity, mais tu n'aurais pas également oc_image ? Ce qui me surprend c'est surtout de voir 2 tables advert avec 2 noms différents. Pourrais-tu faire un screen de l'arborescence des fichiers du bundle ?
{% if advert is defined and advert.image is not null %}
<img src="{{ advert.image.url }}" alt {{advert.image.alt}} heigth="60">
{% else %}
pas d'image a aficher
{% endif %}
{% if advert is defined and advert.image is not null %}
<img src="{{ advert.image.url }}" alt {{advert.image.alt}} heigth="60">
{% else %}
pas d'image a afficher
{% endif %}
Bonne idée mais ça ne résout malheureusement pas le problème de l'image qui ne se créé pas dans la DB... Ça contourne le problème sans réellement le résoudre.
Je vais quand même attendre de voir l'arborescence des fichiers mais serait-il également possible de m'envoyer une archive du projet Symfony ? Je serais plus à même de voir d'où viens l'erreur et si je la trouve je te ferais un retour de manière à t'expliquer le plus précisément possible
je viens de regarder tes entités et j'ai regardé par rapport a la doc de doctrine et par rapport a d'autre projet et il me semble bien que tes annotation sont incomplètes. il te manque un JoinColumn avec le nom de ta colonne et la referencedColumnName d'un coté et de l'autre un mappedBy (fin tu verra bien si tu cliques sur mon lien)
Si tu utilise memecache n'oublie pas de le flusher (sinon les motif de tes entité ne seront pas prisent en compte), vide ton cache symfony et dit nous ce qui ce passe
Je viens enfin de prendre le temps de regarder ton projet et assez étrangement tout fonctionne chez moi avec une modification mineure. Je n'ai pas touché aux fichiers du bundle mais uniquement aux fichier parameters.yml. De même il faudra modifier le fichier parameters.yml.dist afin que le parameters.yml ne soit pas modifier à chaque update de ton projet Symfony.
Je précise que j'utilise Wamp avec les paramètres par défaut (sauf localhost qui est automatiquement ajouté dans l'utl) pour tester ton projet Il se peut donc que ces paramètres soient différents chez toi, notamment host (celui de l'url pour accéder à phpmyadmin), name et user. Une fois modifié oublie pas les commandes suivantes:
Je vais réessayer depuis mon PC fixe, en attendant supprime la DB et recréé la avec les commandes. J'aimerais bien aussi savoir quelle url est utilisée quand tu regarde une page du site.
Bon je vais essayer de détailler toutes les manipulations que je fais, sait on jamais:
Je télécharge et installe Wamp 3.0.6 puis sa mise à jour 3.0.8
Je sélectionne la version 7.0.10 de PHP (par défaut j'ai aussi MySQL 5.7.14 et Apache 2.4.23) puis dande l'ajout de localhost dans l'url
Je vais dans les paramètres de Windows pour que la commande PHP soit reconnue dans la console et sélectionne php 7.0.10 de Wamp
Je décompresse l'archive Symfony que tu nous à passé
Je modifie le fichier parameters.yml comme ceci
# This file is auto-generated during the composer install
parameters:
database_host: localhost
database_port: null
database_name: test_sf3
database_user: root
database_password: null
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
secret: e0fba89ac8598748b1c7bd36c5a858eb99625be2
Je modifie le fichier parameters.yml.dist comme ceci
# This file is a "template" of what your parameters.yml file should look like
# Set parameters here that may be different on each deployment target of the app, e.g. development, staging, production.
# http://symfony.com/doc/current/best_practices/configuration.html#infrastructure-related-configuration
parameters:
database_host: localhost
database_port: ~
database_name: test_sf3
database_user: root
database_password: ~
# You should uncomment this if you want use pdo_sqlite
# database_path: "%kernel.root_dir%/data.db3"
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: ~
mailer_password: ~
# A secret key that's used to generate certain security-related tokens
secret: ThisTokenIsNotSoSecretChangeIt
C'est justement ce que je comprends pas, c'est que finalement je ne fais rien de spécial, juste de quoi mettre le projet sur mon PC et tout fonctionne. Prends le temps de vérifier les mises à jour des logiciels et langages, et vérifie que toutes les manipulation que j'ai faites le soient aussi chez toi. Si cela ne fonctionne pas, supprime tout, désinstalle Wamp et refait les manipulations tout comme moi.
Si t'as des question ou des problèmes hésite pas à demander je suis toujours dispo
J'ai essayé de chercher dans le code pourquoi mais j'avoue que je comprend pas bien, c'est peut être normal mais j'ai dû rater quelque chose...
J'ai re-cliquer plusieurs fois sur Ajouter une annonceet à chaque lien l'image apparait sauf sur recherche développeur symfony à droite (advert/1). Je suis allé voir dans ma base de donnée et image_id de l'id1 = NULL =>
______________________________________
Du coup j'ai compris pourquoi ça affichait pas d'image quand l'id = 1
Bonne question, as-tu supprimé la db avant de faire les manipulations ? Car si non, alors il s'agit probablement de l'advert créé quand tu avais le bug Ce qui semble le confirmer, c'est que les derniers advert n'ont pas ce problème, et que l'id de l'image = id de l'advert -1.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
</radiax>
</radiax>
</radiax>
</radiax>
</radiax>
</radiax>
</radiax>
</radiax>
</radiax>