Laravel Nova Pertence não funciona quando o nome do método de relacionamento e prefixo de chave estrangeira são diferentes

votos
1

Pertence a relação não funciona no meu aplicativo Nova quando o nome do método de relacionamento e prefixo de chave estrangeira são diferentes.

Eu tenho duas tabelas, evento & client_location com modelos Event & ClientLocation

Modelo de evento:

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

ClientLocation Modelo:

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

Nova Resource campos método de Evento:

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

Qualquer ideia sobre como lidar com esta questão?

Publicado 08/11/2018 em 06:42
fonte usuário
Em outras línguas...                            


1 respostas

votos
5

BelongsTo::make() pode tomar 3 argumentos.

Eles são:

  1. Nome para mostrar
  2. Nome da relação
  3. recurso Nova

No seu caso particular, isso deve funcionar

BelongsTo('Events', 'clientLocation', App\Nova\ClientLocation::class)
Respondeu 08/11/2018 em 06:54
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more