2017-05-03 4 views
2

私はSonata Adminバンドルを使用しています。エラーが表示されます:オブジェクトの作成に失敗しました:PizzaBundle \ Entity \ Promotion私はプロモーションエンティティをした:Symfony3オブジェクトの作成に失敗しました

/** 
* @ORM\Entity 
* @ORM\Table(name="promotion") 
*/ 
class Promotion { 

    /** 
    * @ORM\Id 
    * @ORM\Column(type="integer") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    private $id; 

    /** 
    * @ORM\Column(type="string", length=100) 
    */ 
    private $title; 

    /** 
    * @ORM\Column(type="string") 
    */ 
    private $description; 



    /** 
    * @ORM\Column(type="blob") 
    */ 
    private $image; 

    /** 
    * @ORM\Column(type="date") 
    */ 
    private $dataStart; 

    /** 
    * @ORM\Column(type="date") 
    */ 
    private $dataEnd; 

そしてPromotionAdmin.php

public function configureFormFields(FormMapper $formMapper) { 
     $formMapper 
       ->add('title', 'text') 
       ->add('description', 'text') 
       ->end() 
       ->with('Zdjęcie') 
        ->add('image', 'file', ['required' => false]) 
        ->add('dataStart', 'date') 
        ->add('dataEnd', 'date') 
       ->end(); 
    } 

    protected function configureDatagridFilters(DatagridMapper $datagridMapper) 
    { 
     $datagridMapper 
       ->add('title') 
       ->add('description') 
       ->add('image') 
       ->add('dataStart') 
       ->add('dataEnd') 
       ; 
    } 

    protected function configureListFields(ListMapper $listMapper) 
    { 
     $listMapper 
       ->addIdentifier('title') 
       ->addIdentifier('description') 
       ->addIdentifier('image') 
       ->addIdentifier('dataStart') 
       ->addIdentifier('dataEnd') 
       ; 
    } 



} 

マイservices.yml

admin.promotion: 
     class: PizzaBundle\Admin\PromotionAdmin 
     arguments: [~, PizzaBundle\Entity\Promotion, ~] 
     tags: 
      - { name: sonata.admin, manager_type: orm, label: Promotion } 

私は自分のコードに問題はありません。これはエンティティの変数Image型に問題があると思います。これがBLOB型のエラーであれば、問題を解決するのを手伝ってください。

+0

例外があるログ行があり、プロファイラーを見てください。 – greg0ire

+0

例外についての私の記事はダウンしています。 –

答えて

2

"image"列にNULLを挿入しようとしていますが、これはNULL許容されないため、MySQLエラーとなります。

/** 
* @ORM\Entity 
* @ORM\Table(name="promotion") 
*/ 
class Promotion 
{ 
    /** 
     * @ORM\Column(type="blob", nullable=true) 
     */ 
    private $image; 
} 
関連する問題