我正在开发一个应用程序,我希望获得所有用户的打开任务并显示它们。我创建了一个新的视图,路由,控制器和模型,但我无法使模型正常工作,特别是因为它与获取SQL查询的当前用户ID有关。
应用程序/模型/ Task.php
class Task extends Eloquent
{
public static function open()
{
$id = Auth::user()->id;
$tasks = DB::table('tasks')->where('c', 0)->where('user_id', $id)->get();
return $tasks;
}
}
另外
应用程序/控制器/ TaskController.php
public function open()
{
$tasks = Task::open();
return View::make('tasks.open')->with('tasks', $tasks);
}
错误:尝试获取非对象的属性 - 看起来像$id = Auth::user()->id;
什么是正确的型号?
答案 0 :(得分:0)
看起来没有登录是问题 - 这种模式有效。
因为这可能会在将来帮助其他人:当您创建用户的帐户时,在将密码添加到数据库时使用Hash :: make,因为当您在登录方法中使用Auth :: attempt时,Laravel用户键入的哈希密码并比较两者,如果它们都没有哈希,则不会记录用户。