美好的一天,
我目前正在使用Jenseggers和laravel 4的Moloquent ......
一切正常,甚至试图使用此代码获取姓氏以查看它是否正常工作
{{ $userGroup->lastname }}
当我尝试访问群组时,它正常,但
{{ $userGroup->groups }}
它会抛出一个
ErrorException Array to string conversion (View: /var/www/laravel-learnapolis/app/views/dashboard/main.blade.php)`
尝试做var_dump,它给了我这个输出(工作正常)
{{ var_dump($userGroup->groups) }}
结果
array(2) {
[0]=>
array(4) {
["groupID"]=>
string(12) "140368641573"
["name"]=>
string(2) "aw"
["description"]=>
string(2) "wa"
["dateCreated"]=>
object(MongoDate)#187 (2) {
["sec"]=>
int(1403686415)
["usec"]=>
int(521000)
}
}
-------供参考----------
蒙戈
{
"_id" : ObjectId("53a800a2abd28e07068b4567"),
"email" : "my@email.com",
"firstname" : "firstname",
"lastname" : "lastname",
"password" : "$2y$10$hUGZhkHWBKKxvk4n1LU16OYWeALlYxeU6C15UvzH1ic.gJ7O4uCsu",
"hash" : "",
"active" : 1,
"updated_at" : ISODate("2014-06-24T10:43:21.958Z"),
"remember_token" : "NSint7eLHFuxbDKRkpK11qyIUDDtS06LaBJt0MgwsjElrUllpORBbN8YVoSL",
"groups" : [
{
"groupID" : "140368641573",
"name" : "aw",
"description" : "wa",
"dateCreated" : ISODate("2014-06-25T08:53:35.521Z")
}
]
}
控制器
public function dashboard() {
$userID = Auth::user()->_id;
$user = User::where('_id','=',$userID);
if ( $user->count() ) {
$user = $user->first();
return View::make('dashboard.main')
->with('userGroup', $user);
}
}
查看(刀片)
正常运作
{{ $userGroup }}
无法使用
{{ $userGroup->groups }}
尽管有一些困难,希望有人可以帮助我。我是laravel的新手,但我确实有使用MongoDB的经验..尝试搜索叔叔谷歌,但没有任何解决问题的解决方案..
谢谢!
答案 0 :(得分:1)
通过更改某些代码而不是使用
来修复它User::where
用这个改变它
User::find
我不知道,两者之间的区别是什么,但谢天谢地,它现在有效......但随时可以对此作出解释..
<强>控制器强>
public function dashboard() {
$user = User::find( Auth::user()->_id );
if ( $user->count() ) {
return View::make('dashboard.main')
->with('user', $user);
}
}
查看强>
@if ( is_array($user->groups) )
@foreach ( $user->groups as $grp )
{{ $grp['name'] }}
@endforeach
@endif
由于
答案 1 :(得分:0)
群组是一个数组(我猜它是“很多”的关系)
所以你需要这样做
@foreach ($userGroup->groups as $group)
{{{ $group->name }}}
@endforeach
这样就会列出每个组的名称。