https://github.com/stof/StofDoctrine.../doc/index.rst

Bonjour,

je fais appel à ceux qui ont déjà utilisé uploadable, j'ai suivie la doc mais l'image que je veux uploader n'est jamais enregistré dans mon dossier upload.
je n'ai pas de message d'erreur.

// app/AppKernel.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
public function registerBundles()
{
    return array(
        // ...
        new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
        // ...
    );
}
autoload
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
$loader->add('Stof\DoctrineExtensionsBundle', __DIR__.'/../vendor/stof/doctrine-extensions-bundle');
$loader->add('Gedmo' , __DIR__.'/../vendor/gedmo/doctrine-extensions/lib');
config.yml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
stof_doctrine_extensions:
    default_locale: fr_FR
 
    # Only used if you activated the Uploadable extension
    uploadable:
        # Default file path: This is one of the three ways you can configure the path for the Uploadable extension
        default_file_path:       %kernel.root_dir%/../web/uploads
 
        # Mime type guesser class: Optional. By default, we provide an adapter for the one present in the HttpFoundation component of Symfony
        mime_type_guesser_class: Stof\DoctrineExtensionsBundle\Uploadable\MimeTypeGuesserAdapter
 
        # Default file info class implementing FileInfoInterface: Optional. By default we provide a class which is prepared to receive an UploadedFile instance.
        default_file_info_class: Stof\DoctrineExtensionsBundle\Uploadable\UploadedFileInfo


mon entité image.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 
...
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
 
/**
 * @ORM\Entity
 * @ORM\HasLifecycleCallbacks
 */
class Image {
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;
 
    /**
     * @ORM\Column(type="string", length=255)
     */
    private $name;
 
    /**
     * @ORM\Column(type="string", length=255, nullable=true)
     */
    private $path;
 
    /**
     * @Assert\File(
     *     maxSize = "1024k",
     *     mimeTypes = {"image/jpeg"},
     *     mimeTypesMessage = "Veuillez uploader une image valide"     
     * )
     * @ORM\Column(name="file", type="string", nullable=false)
     */
    private $file;    
...
 
get et set de : file, name, path ...





controller
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
...
$image= new Image();
$form = $this->createFormBuilder($image)
    ->add('name')
    ->add('myFile')
    ->getForm()
;
 
if ($this->getRequest()->getMethod() === 'POST') {
    $form->bindRequest($this->getRequest());
 
    if ($form->isValid()) {
        $em = $this->getDoctrine()->getEntityManager();
 
        $em->persist($image);
 
        $uploadableManager = $this->get('stof_doctrine_extensions.uploadable.manager');
 
        // Here, "getMyFile" returns the "UploadedFile" instance that the form bound in your $myFile property
        $uploadableManager->markEntityToUpload($image, $image->getFile());
 
        $em->flush();
 
        $this->redirect(...
    }
}
...

merci, si vous l'avez fait pouvez vous me copier vos bouts de codes que je puisse comparer.