0
MongoDBコレクションに複数の埋め込みドキュメントが設定されています。これは私のサンプル文書がどのように見えるかです:Laravel 5.4 with MongoDB - 埋め込みドキュメントを取得しようとしています
{
"_id" : ObjectId("58a331ffb854d000f97862f3"),
"first_name" : "John",
"last_name" : "Doe",
"email" : "[email protected]",
"password" : "$2y$10$fIuECeTqvSUY1g.VPgWxceEzB0/q2OtgDXlm9ZTqwY77U74hVEe6q",
"updated_at" : ISODate("2017-02-14T16:36:15.079Z"),
"created_at" : ISODate("2017-02-14T16:36:15.079Z"),
"diagnosis" : [
{
"d_name" : "Asthma",
"d_isTreated" : "No",
"d_diagnosed_at" : "2017-02-14"
},
{
"d_name" : "Bronchitis",
"d_isTreated" : "No",
"d_diagnosed_at" : "2017-02-14"
},
{
"d_name" : "Hepatitis C",
"d_isTreated" : "No",
"d_diagnosed_at" : "2017-02-14"
}
]
}
親文書がUser
クラスに属します。しかし、私のホーム・ページビューで私はこのようなユーザごとに診断のリストを取得しようとすると:
<center>
@foreach($users as $user)
{{ $user->diagnosis }}
@endforeach
</center>
Laravelはdiagnosis
オブジェクトの配列を取得することができず、エラーを出力します
ErrorException in helpers.php line 532:
htmlspecialchars() expects parameter 1 to be string, array given (View: /Users/janisozolins/Sites/patientapp/resources/views/home.blade.php)
これらの配列はどのように取得できますか?また、Diagnosis
文書のそれぞれにPrescriptions
サブ文書を追加することで、それらをさらに埋め込む予定です。
これは正しいアプローチだと思われますが、システムは現在CompilesLoops.php行80:未定義オフセット:1'でErrorExceptionを返します。私はそれを取得中に間違った配列のオフセットを使用して何かを持っていると仮定? – JanisOzolins