ドキュメントに文字列の単純な配列/コレクションが必要ですが、Doctrine ODM でこれを実現する方法が見つかりません。
これはクラス/ドキュメントの例$tags
で、文字列の単純な配列である必要があります:
namespace Acme\ExampleBundle\Document;
use Doctrine\ODM\MongoDB\Mapping\Annotations as MongoDB;
/** @MongoDB\Document */
class MyDocument {
/** @MongoDB\Id */
protected $id;
/** @MongoDB\String */
protected $name;
/** @MongoDB\EmbedMany */
protected $tags = array();
}
私はさまざまなことを試しました。@MongoDB\EmbedMany
または@MongoDB\EmbedMany(targetDocument="String")
、最後のものが機能する理由がないことを知っていますが、考えられることは何でも試してみました。
JSON としての Mongo DB の最終結果は、次のように単純です。
{
"_id": ObjectId("a0afa410caeea70de1000000"),
"name": "Example Name",
"tags": ["tag1", "example", "test tag"]
}
私が助けを必要としているのは、 @MongoDB\EmbedMany アノテーションを使用してコレクションに文字列のみを追加できるようにする方法です。これは、DB に永続化されたときに上記の JSON のようになります。
私は今これに本当に行き詰まっているので、誰かが助けてくれることを願っています。それはとてもシンプルであるべきだと感じます!