无法显示mongodb集合以查看Laravel

时间:2019-04-01 02:45:11

标签: laravel mongodb


我正在使用MongoDb和Laravel进行演示。
我正在尝试从MongoDb获取该集合并显示它以在Laravel中查看。
这是我的模型:

class Account extends Eloquent
{

    public function getAllAccount() {
        $account = DB::connection('mongodb')->collection('Account')->get();

        return $account;
    }
}

这是我的控制器:

class AccountController extends Controller
{

    public function index() {
        $acc = new Account();

        $data = $acc -> getAllAccount();

        return view('account', $data);
    }
}

然后,我将其显示以查看:

@if(isset($data))
                @foreach($data as $dataValue)
                <tr>
                    <td>{{ $dataValue->_id }}</td>
                    <td>{{ $dataValue->avail_balance }}</td>
                    <td>{{ $dataValue->last_activity_date }}</td>
                    <td>{{ $dataValue->open_date }}</td>
                    <td>{{ $dataValue->pending_balance }}</td>
                    <td>{{ $dataValue->cust_id }}</td>
                    <td>{{ $dataValue->open_branch_id }}</td>
                    <td>{{ $dataValue->open_emp_id }}</td>
                    <td>{{ $dataValue->product_id }}</td>
                </tr>
                @endforeach
                @endif

我在web.php中设置了控制器:

Route::get('/account', 'AccountController@index');

但是当我运行它时,它什么也不返回,只是空白页。
我该如何解决? 非常感谢你!

更新: 我在控制器中使用dd($ data),这是我的所有集合: enter image description here

1 个答案:

答案 0 :(得分:1)

您必须以页面可以使用的格式将数据发送回去。

index()方法中,更改:

return view('account', $data);

return view('account', compact ('data');

很漂亮,您也可以使用-> with(),但是我喜欢紧凑,因为您可以轻松移动许多变量。