[英]laravel retrieving specific data
我试图输出用户发出的所有请求,并将其显示在laravel项目的个人资料页面中,
在我的家庭控制器中,我具有此功能
public function profile()
{
$requests = Requests::where('userid', '{{ Auth::user()->userid }}')->get();
return view('profile');
}
并输出以下消息:
E:\\ xampp \\ htdocs \\ test1 \\ app \\ Http \\ Controllers \\ HomeController.php中的FatalErrorException第31行:找不到类'App \\ Http \\ Controllers \\ Requests'
(第31行是上面函数的顶行)
这是我的profile.blade.php
@extends('layouts.app')
@section('content')
<div class="container">
<div class="panel panel-default">
<div class="panel-heading"><h1>Profile: {{ Auth::user()->f_name }}</h1></div>
<div class="panel-body">
@foreach ($requests as $requests)
<ul>
<h4>Title: {{$requests->r_title}}</h4>
<h4>Author: {{$requests->r_author}}</h4>
<h4>Year: {{$requests->r_year}}</h4>
<h4>Condition: {{$requests->r_condition}}</h4>
<br/>
</ul>
@endforeach
</div>
</div>
</div>
@endsection
这是app文件夹中的Request.php页面
namespace App;
use Illuminate\Database\Eloquent\Model;
class Requests extends Model
{
protected $primaryKey = 'requestid';
protected $fillable = [
'userid', 'f_name', 'l_name', 'r_title', 'r_year', 'r_author', 'r_condition'
];
}
您需要通过以下方式将模型包括到控制器中:
use App\Requests;
另一种方法是将profile()
方法更改为:
public function profile()
{
$requests = \App\Requests::where('userid', \Auth::user()->id)->get();
return view('profile');
}
接下来,您可以通过以下方式将$requests
传递给视图:
return view('profile', [
'requests' => \App\Requests::where('userid', \Auth::user()->id)->get(),
]);
现在,您可以访问刀片文件中的$ requests。 :)
做这个。 还要验证用户表是否具有userid
因为默认情况下它是userid
id
,除非您已更改。
public function profile()
{
$requests = \App\Requests::where('userid', auth()->user()->userid)->get();
return view('profile')->with(['requests' => $requests]);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.