2017-01-02 5 views
0

に親と子エンティティを挿入する私は、子実体を参照している親エンティティを持っているし、クラスが書かれている次のようにsymfonyの

ここ
class MyEntity { 
    /** 
    * ORM Annotations 
    */ 
    private $id; 

    /** 
    * ORM Annotations 
    */ 
    private $name; 

    /** 
    * @var string 
    * @ORM\OneToOne(targetEntity="Picture") 
    */ 
    private $image; 

    /** Getters & Setters **/ 
} 

private Image { 
    private $id; 
    private $image_url; 
} 

は、画像が弱い実体であると私はしないでくださいMyEntityオブジェクトを挿入する前に画像を挿入したい基本的に私の質問は、MyEntityのフォームをレンダリングすると、Imageフォームがその一部として表示され、MyEntityを保存するとイメージが保存されるようになります。

答えて

1

どのようにコードにtargetEntity="Picture"があり、子エンティティとしてImageが定義されていますか。私はタイプミスがあると思う、あなたは修正する必要があります。

imagecascade={"persist", "update"}を追加する必要があります。MyEntityです。

これにより、画像エンティティが作成/更新されることを確認します。MyEntity

今すぐフォームのパート

Imageのための新しいFormTypeを作成し、ImageTypeとしてそれを呼び出すことができます。あなたのMyEntityにformTypeで は、新しいフィールドとして新にformTypeを追加します。フォームの提出に今

$builder 
    ->add('image', ImageType::class, array(
     'label' => 'Image' 
)); 

、子エンティティ(イメージ)に応じて更新/作成されます。

注::画像アップロードを明示的に行う必要があります。

希望すると便利です。