【发布时间】:2015-03-10 04:32:46
【问题描述】:
我有以下表格:
用户 游戏 字符
用户一次将有一个活跃的游戏,并且从该游戏中,将有一个活跃的角色。
我想在我的身份验证表上执行以下 joi:
SELECT * FROM users
LEFT OUTER JOIN games ON games.ID = users.active_gameid
LEFT OUTER JOIN characters ON characters.ID = games.active_charid
尽量忽略 SELECT * 部分。
我想在页面加载后立即在我的 Auth 表上执行这些连接,所以我一直在使用我的 User 模型来执行以下操作:
class User extends Eloquent implements UserInterface, RemindableInterface {
公共功能游戏(){
return $this->hasOne('game', 'ID', 'active_gameid');
}
}
类游戏扩展 Eloquent {
受保护的$table =“游戏”;
公共功能字符(){
return $this->hasOne('character', 'ID', 'active_charid');
}
}
类字符扩展 Eloquent {
受保护的 $table = "字符";
}
以上不起作用,因为输出以下只是返回一个 NULL 值:
var_dump(Auth::user()->game->character);
我已尝试进行明显的检查,例如确保数据在表中等等,一切看起来都很好。
有人对我哪里出错有任何帮助吗?
谢谢!
【问题讨论】:
-
你自己试过 var_dumping
Auth::user()和Auth::user()->game吗?
标签: php mysql laravel eloquent relationships