【问题标题】:Laravel receive information from userLaravel 从用户那里接收信息
【发布时间】:2015-11-21 02:26:37
【问题描述】:

我有两个表:一个用户表和一个汽车表。当用户登录时,我想展示他的汽车,其中包含大量信息。但是我如何在控制器中执行此操作,包括从该用户那里提供正确的汽车信息?我已经设置了关系,但是如何在控制器中接收正确的信息?

我在想这个:

$car = car()->user();
        return view('cars.index',compact('usercar','car'));

当然这是错误的,但正确的方法是什么?

编辑:

这是我的控制器,这是索引方法:

use App\Car;
public function index()
    {
        $car = Auth::user()->Car;
        return view('tickets.index',compact('usercar','car'));
    }

这是我的用户模型:

use App\Car;
    public function car()
{
    return $this->hasMany('App\Car');
}

这是我的车型:

use App\User;
    public function user()
{
    return $this->belongsTo('App\User');
}

这是我的路线:

Route::get('/tickets','TicketsController@index');

在 Model.php 第 893 行 FatalErrorException->__construct() 中 HandleExceptions.php 第 133 行 HandleExceptions->fatalExceptionFromError() 在 HandleExceptions.php HandleExceptions->handleShutdown() 中 HandleExceptions.php 中的第 118 行 第 0 行 Model->hasMany() 在 User.php 第 39 行 Model.php 第 2658 行中的 User->rittenregistratie() Model.php 第 2631 行中的 Model->getRelationshipFromMethod() Model.php 第 2573 行中的 Model->getRelationValue() Model->getAttribute() 在 Model.php 第 3291 行的 Model->__get() 中 Controller.php 第 30 行

编辑:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
use App\User;
class Car extends Model
{
    protected $table = 'Car';
    protected $fillable = ['beginstand', 'eindstand', 'van','naar','bezoekadres','geredenroute','karakterrit','toelichting','kilomterszakelijk','kilomtersprive'];

    public function User()
    {
        return $this->belongsTo('App\User');
    }
}

【问题讨论】:

    标签: laravel-5


    【解决方案1】:

    假设你的关系是正确的,你应该能够做到这一点:

    $cars = Auth::user()->cars; // cars being the name of the relation method
    return view('cars.index', compact('cars'));
    

    既然你说“展示他的汽车”,我猜一个用户可以拥有许多汽车,所以希望$cars 是一个集合,而不是一个模型。

    【讨论】:

    • 再次感谢您的回复 :) 但我收到错误:Model.php 第 893 行中的 FatalErrorException:找不到类 'app\cars'。命名空间等是正确的。
    • 听起来你们的关系是错误的。应该是$this-&gt;hasMany('App\Car');(或任何你的班级名称)
    • 关系正确。我现在知道为什么我会收到 FatalErrorException,因为我已经对其进行了命名空间并将使用等放在了顶部。
    • 那么请编辑您的问题并向我展示您的代码。否则我不能再帮你了。
    • 请使用大写的命名空间和类名!
    猜你喜欢
    • 2017-09-22
    • 2014-04-07
    • 2016-11-17
    • 1970-01-01
    • 2019-07-17
    • 2022-11-11
    • 2020-10-05
    • 2019-04-06
    • 2014-09-16
    相关资源
    最近更新 更多