1

REST API (Doctrine エンティティなし) を使用する Symfony2 アプリケーションを使用しています。

私はフォームタイプを持っています: ($this->regionService は、利用可能なすべての地域を API から取得するためのサービスです)

$regionChoiceList = new ObjectChoiceList($this->regionService->getAll(), 'name', array(), null, 'id');

$builder->add('region', 'choice', array(
                'error_bubbling' => true,
                'required' => false,
                'choice_list' => $regionChoiceList
            ))

新しいエンティティの作成はすべて正常に機能します。このタイプのオブジェクトを編集しようとすると、正しいオプションが選択されていません。シリアル化されたオブジェクトは正しく、JSON 応答からシリアル化されたオブジェクトの例を残します。

Object:
  "name" = "blahblah"
  "etc..."
  "region"(Region Object): 
    "name" = "name region"
    "id"   = identifier region
4

1 に答える 1

1

RegionService によって返されたリストの Region を Object エンティティに含まれているものに置き換えることができます。

symfony に正しいオプションを選択させるには、インスタンスが同じでなければならないようです。

于 2013-03-29T10:44:25.773 に答える