Laravel 拉维尔一对多关系问题

Laravel 拉维尔一对多关系问题,laravel,laravel-5,eloquent,Laravel,Laravel 5,Eloquent,我正在从事laravel v5.8项目。我在建立一对多关系时遇到了一些问题 我有两个表,一个是用户,它提供一些服务和其他表服务。我想在他们之间建立一对多的关系。 对于用户来说,必须有很多服务。 for服务必须属于用户上的。 我的代码: User.php public function services() { return $this->hasMany(Service::class); } Service.php public function user(

我正在从事laravel v5.8项目。我在建立一对多关系时遇到了一些问题

我有两个表,一个是用户,它提供一些服务和其他表服务。我想在他们之间建立一对多的关系。 对于用户来说,必须有很多服务。 for服务必须属于用户上的。 我的代码:

User.php

public function services()
    {
        return $this->hasMany(Service::class);
    }
Service.php

public function user()
    {
        return $this->belongsTo(User::class);
    }
Controller.php

 public function index()
    {
        //
        return view('vendor.services',['services'=>Service::with("user")->get()]);
    }
刃锉

 @foreach ($services as $service )
    <tr>
      <td>{{$service->name}}</td>
      <td>{{$service->user_id->name}}</td>
    </tr>
 @endforeach
2.服务

Schema::create('services', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('name');
            $table->string("short_desc", 250);
            $table->string("long_desc", 1500);
            $table->double("price", 10);
            $table->bigInteger('type_id')->unsigned();
            $table->foreign('type_id')->references('id')->on('types');
            $table->string("img");
            $table->bigInteger("city_id")->unsigned()->nullable();
            $table->foreign('city_id')->references('id')->on('cities');
            $table->bigInteger("region_id")->unsigned()->nullable();
            $table->foreign('region_id')->references('id')->on('regions');
            $table->bigInteger("user_id")->unsigned()->index();
            $table->foreign('user_id')->references('id')->on('users');
            $table->timestamps();
        });
错误: 正在尝试获取非对象的属性“name”(视图:/home/nazeeh/Desktop/petVet/resources/views/vendor/services.blade.php)

替换

{{$service->user_id[0]??“not'}}

{{$service->user?$service->user->name:'not'}}


您可以显示
用户
表中的任何字段,而不是
名称


例如
$service->user->id
$service->user->email

等“我有一些问题”-那么问题到底是什么?你有什么错误吗?是的,但我按照下面的答案解决了。谢谢。很高兴听到它起作用了。您可以接受并投票表决答案;)
Schema::create('services', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('name');
            $table->string("short_desc", 250);
            $table->string("long_desc", 1500);
            $table->double("price", 10);
            $table->bigInteger('type_id')->unsigned();
            $table->foreign('type_id')->references('id')->on('types');
            $table->string("img");
            $table->bigInteger("city_id")->unsigned()->nullable();
            $table->foreign('city_id')->references('id')->on('cities');
            $table->bigInteger("region_id")->unsigned()->nullable();
            $table->foreign('region_id')->references('id')->on('regions');
            $table->bigInteger("user_id")->unsigned()->index();
            $table->foreign('user_id')->references('id')->on('users');
            $table->timestamps();
        });