日安,
我现在用的是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)
}
}-供参考
Mongo
{
"_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 }}只是有点困难,希望有人能帮我。我是一个有着拉拉的新手,但我确实有MongoDB的经验。试着搜索谷歌叔叔,但没有解决问题的任何解决方案。
谢谢!
发布于 2014-06-27 07:29:29
通过更改一些代码而不是使用
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谢谢
发布于 2014-06-25 10:07:24
组是一个数组(我猜它是一个“多”关系)
所以你需要这么做
@foreach ($userGroup->groups as $group)
{{{ $group->name }}}
@endforeach这样,它就会列出每个组的名称。
https://stackoverflow.com/questions/24405620
复制相似问题