2017-03-09 11 views
0

こんにちは皆、この文書のラーベールブレードにオーナーネームを表示したいと思います。Laravel Bladeに埋め込まれたMongoDBドキュメントを表示するには?

foreachループを使用して名前と説明を表示できますが、埋め込みドキュメントからは表示できません。

{ 
     "_id" : ObjectId("58c1b173ebda1297b747271b"), 
     "name" : "Name of Board", 
     "description" : "Board short description", 
     "postdate" : ISODate("2016-12-19T06:01:17.171Z"), 
     "owner" : [ 
       { 
         "_id" : ObjectId("58c13ebaebda1297b747271a"), 
         "name" : "Joker" 
       } 
     ], 
     "tag" : { 

     }, 
     "subscribers" : [ 
       { 

       } 
     ], 
     "likes" : [ 
       ObjectId("58c13ebaebda1297b747271a") 
     ] 
} 

ご協力ください。それはあなたがforeachのとそれにアクセスする必要があるネストされた配列だと...事前

+0

@foreach ($boards as $board) <p>{{ $board->name }}</p> <p>{{ $board['owner']['name'] }}</p> @endforeach 
ことによってそれをアクセス。ネストされたforeachでループします。 – Josip

+0

@Josip私はこれ(https://paste.laravel.io/on2P1)と(https://paste.laravel.io/LKqOM)を試しましたが、うまくいきませんでした。 –

+0

これを試してみてください。それは配列を含む配列です... https://paste.laravel.io/Zo7qM – Josip

答えて

0

@foreach ($boards as $board) 
    <p>{{ $board->name }}</p> 
    @foreach ($board->owner as $ownerArray) 
    <p>{{ $ownerArray['name'] }}</p> 
    @endforeach 
    @endforeach 
+0

残念ですが、動作しません。 3行目に「MongoDB \ BSON \ ObjectID型のオブジェクトを配列として使用できません」というエラーが表示されます –

0

[OK]をお願いします。私はデータを保存する方法を変更しました。

{ 
     "_id" : ObjectId("58c1d1a48c2201423599f7fd"), 
     "name" : "Name of Board2", 
     "description" : "Board short description", 
     "postdate" : ISODate("2016-12-19T06:01:17.171Z"), 
     "owner" : { 
       "_id" : ObjectId("58c13ebaebda1297b747271a"), 
       "name" : "Joker" 
     }, 
     "tag" : { 

     }, 
     "subscribers" : [ 
       { 

       } 
     ], 
     "likes" : [ 
       ObjectId("58c13ebaebda1297b747271a") 
     ] 
} 

は、私は所有者フィールドの値は、その内部に他の配列を持っている配列である

関連する問題