0

我有一个包含多个嵌入式文档的 MongoDB 集合。这是我的示例文档的样子:

{
    "_id" : ObjectId("58a331ffb854d000f97862f3"),
    "first_name" : "John",
    "last_name" : "Doe",
    "email" : "test@test.com",
    "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)

如何检索这些数组?我还计划通过向Prescriptions每个Diagnosis文档添加子文档来进一步嵌入它们。

4

1 回答 1

0

您需要遍历诊断数组。

  @foreach($users as $user)
        @foreach $diagnosis as $user->diagnosis
            {{ var_dump($diagnosis) }}
        @endforeach
    @endforeach
于 2017-02-14T18:49:16.130 回答