6

当关系方法名称和外键前缀不同时,属于关系在我的 Nova 应用程序中不起作用。

我有两个表,event & client_location 和 Models Event & ClientLocation

事件模型:

class Event extends Model
{
   public function clientLocation()
   {
       return $this->belongsTo(\App\ClientLocation::class, 'location_id');
   }
}

客户位置模型:

class ClientLocation extends Model
{
   public function events()
   {
       return $this->hasMany(\App\Event::class, 'location_id');
   }
}

事件的 Nova 资源字段方法:

public function fields(Request $request)
{
    return [
        ID::make()->sortable(),
        BelongsTo::make('clientLocation'),
    ];
}

关于如何处理这个问题的任何想法?

4

1 回答 1

18

BelongsTo::make()可以接受 3 个参数。

他们是:

  1. 要显示的名称
  2. 关系名称
  3. 新星资源

在您的特定情况下,这应该有效

BelongsTo('Events', 'clientLocation', App\Nova\ClientLocation::class)
于 2018-11-08T06:54:27.003 回答