小编Tyr*_*ael的帖子

Symfony2文件一步一步上传

我还在学习Symfony2并且不了解如何上传文件.

别担心,我已经检查了文档.这真的很好,但我的问题没有在任何教程中解释.

我正在寻找有关如何使用Symfony2上传文件但有所有人需要的所有东西的指导(例如扩展的约束,基于id和东西重命名文件,在db中存储路径等等)

我找到了很好的教程,试图混合它们但没有成功.每次出现不同的问题:文件在表单上的每次提交时重新上传(即使文件字段为空),guessExtension也不可能使用,tmp路径存储在数据库而不是正确的路径,文件没有移动,不可能在重命名中使用了id,因为id是自动递增的,因此尚未生成).

所以,我会提出一个"标准"实体,比方说:Photo.php

/**
 * Photo
 *
 * @ORM\Table(name="photo")
 * @ORM\Entity
 * @ORM\HasLifecycleCallbacks
 */
class Photo
{
    // Annotation for the id and auto increment etc
    private $id;

    /**
     * @var string
     * @Assert\File( maxSize = "3072k", mimeTypesMessage = "Please upload a valid Image")
     * @ORM\Column(name="image", type="string", length=245, nullable=false)
     */
    private $image

    private $title

    private $description

    // all the function get, set for the 4 previous variables
}
Run Code Online (Sandbox Code Playgroud)

和控制器:

public function addPhotoAction()
{
    $add_photo = new …
Run Code Online (Sandbox Code Playgroud)

upload file formbuilder symfony doctrine-orm

55
推荐指数
3
解决办法
9万
查看次数

标签 统计

doctrine-orm ×1

file ×1

formbuilder ×1

symfony ×1

upload ×1