doushouxie7064 2014-09-01 21:15
浏览 33
已采纳

laravel存储库查询auth用户记录

Hi I have set up a repository in laravel, when I query the projects table on its own for example return Project::all(); I am returned with all the records in the database. However I wanted to query the logged in users records and only retrieve those records so I am doing this as so return Auth::user()->projects; however when I do this I get the following error in my laravel log:

[2014-09-01 20:26:44] production.ERROR: exception 
'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Class 
'Acme\Repositories\Auth' not 
found' in /media/sf_Sites/tempus/app/Acme/Repositories/DbProjectRepository.php:17
Stack trace:
#0 [internal function]: Illuminate\Exception\Handler->handleShutdown()
#1 {main} [] []

My full repository is as follows:

<?php
 namespace Acme\Repositories;

use Project;

class DbProjectRepository implements ProjectRepositoryInterface  {


    public function getAll()
    {
        return Auth::user()->projects;
    }


}

Project Controller

public function index()
    {
        $projects = $this->project->getAll();
         echo View::make('projects.index', compact('projects'));
    }

Project View

@if (Auth::check())
    @if (count($projects) > 0)
   @foreach ($projects as $project)
{{ $project->project_name }}
 @endforeach 
   @else
      <p>No records, would you like to create some...</p>
@endif
    @endif

Does anyone know what I am doing wrong? Would appreciate some guidance.

  • 写回答

1条回答 默认 最新

  • dpmkif3097 2014-09-01 23:05
    关注

    It's because you are using namespace and Auth is not within that namespace, you may just add the Auth in your use statement like:

    namespace Acme\Repositories;
    
    use Project, Auth;
    
    class DbProjectRepository implements ProjectRepositoryInterface  {
    
        public function getAll()
        {
            return Auth::user()->projects;
        }
    }
    

    without use keyword, you may specify the global namespace using \ like:

    public function getAll()
    {
        return \Auth::user()->projects;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 Unity接入微信SDK 无法开启摄像头
  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算
  • ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源