ここでWilliam Durand のチュートリアルに従って、fosrest バンドルと推進力を使用して REST API を作成しようとしています。2日前から連載に頭を悩ませています。同様の問題に遭遇したユーザーを何人か見つけましたが、解決策は見つかりませんでした.
これが私のコントローラーです:
/**
* @Rest\View
*/
public function allAction(){
$messages = MessageQuery::create()->find();
return array('messages' => $messages);
}
メッセージと ID の出力を期待していますが、モデルに関する情報を含む出力が得られます。
{ "messages" : { "formatter" : { "as_columns" : [ ],
"class" : "My\\FooBundle\\Model\\Message",
"collection_name" : "PropelObjectCollection",
"current_objects" : [ ],
"db_name" : "fooDB",
"has_limit" : false,
"peer" : "My\\FooBundle\\Model\\MessagePeer",
"with" : [ ]
},
"model" : "My\\FooBundle\\Model\\Message"
} }
jmsserializer バンドルに propelcollectionhandler.php パッチがあることを確認しました。
私は私の中にこれを持っていますapp/config/config.yml
jms_serializer:
metadata:
auto_detection: true
directories:
Propel:
namespace_prefix: "My\\FooBundle\\Model\\om"
path: "@MyFooBundle/Resources/config/serializer"
namespace_prefix
in propel には名前空間がないと主張しているため、Github のいくつかの例で が空白になっているのを見てきましたBaseModel
が、自動生成された propel ベース モデルには名前空間があります。これは 1.7 で何か新しいことですか? の有無にかかわらず試してみましたが、指定したディレクトリにファイルがありますnamespace_prefix
。Model.om.BaseTableMessage.yml
誰かがこの問題に遭遇しましたか? どのように解決しましたか?ありがとう!