2012-12-27 46 views
0

我按照JFSF tutorial安裝JFSF上傳包。 一步一步,我做到了,沒有錯誤。Symfony2:JFSF上傳包文件輸入NULL

但是,當我嘗試在現有的捆綁中做同樣的事情時,由於某種原因我的表單無法驗證,我的文件輸入始終爲NULL

也許有一個錯誤,services.yml與參數配置綁定實體。如果你想要特定的代碼,問我,但唯一的區別(理論上)只是實體名稱,包名稱。

這個包對於處理上傳過程非常有用。 有人已經試過了嗎?

如果我的var_dump我的實體在我createAction()在我的控制器之前isValid()方法(我使用由控制檯生成的CRUD形式):

object(Toto\GestionSiteBundle\Entity\People)#368 (4) 
{ 
    ["filePhoto"]=> object(Symfony\Component\HttpFoundation\File\UploadedFile)#12 (7) 
    { 
     ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> bool(false) 
     ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> string(7) "95.jpeg" 
     ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> string(10) "image/jpeg" 
     ["size":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> int(73987) 
     ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> int(0) 
     ["pathName":"SplFileInfo":private]=> string(36) "/Applications/MAMP/tmp/php/phpKH4PQo" 
     ["fileName":"SplFileInfo":private]=> string(9) "phpKH4PQo" 
    } 
    ["id":"Toto\GestionSiteBundle\Entity\People":private]=> NULL 
    ["nom":"Toto\GestionSiteBundle\Entity\People":private]=> string(4) "cleo" 
    ["photo":"Toto\GestionSiteBundle\Entity\People":private]=> NULL 
} 

瀏覽器返回我的異常:

An exception occurred while executing 'INSERT INTO People (nom, photo) VALUES (?, ?)' with params {"1":"cleo","2":null}: 

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'photo' cannot be null 

回答

0

多小時沒有結果後,

我放棄了這個包,我嘗試VichUploaderBundle。 5分鐘後,我可以上傳我的第一張圖片。

這個包聽起來不錯!