Laravel Nova: сводная таблица с 3 отношениями - PullRequest
0 голосов
/ 28 сентября 2019

в моем проекте Laravel Nova у меня есть следующие модели:

- Ricetta
   -id

- Ingrediente
   -id

- UnitaMisura
   -id

- RicettaHasIngrediente (many to many, pivot table)
    -ricetta_id
    -ingrediente_id
    -qta
    -unita_misura_id

Код:

class Ricetta extends Model
{
public function ingrediente()
    {
        return $this->belongsToMany('\App\Models\Ingrediente', 'ricetta_has_ingrediente', 'ricetta_id', 'ingrediente_id')->withPivot('qta', 'unita_misura_id');
    }
}
class Ingrediente extends Model
{
        public function ricetta()
    {
        return $this->belongsToMany('\App\Models\Ricetta', 'ricetta_has_ingrediente', 'ingrediente_id', 'ricetta_id')->withPivot('qta', 'unita_misura_id');
    }
}
class UnitaMisura extends Model
{
        public function ricettaHasIngrediente()
    {
        return $this->belongsTo('\App\Models\ricettaHasIngrediente', 'unita_misura_id', 'id');
    }
}
class RicettaHasIngrediente extends Model
{
        public function unitaMisura()
    {
        return $this->belongsTo('\App\Models\UnitaMisura', 'unita_misura_id', 'id');
    }
}

Я думаю, что эта структура верна.С Laravel Nova я определил все поля и атрибуты сводной таблицы, но я не могу использовать unita_misura_id:

...
BelongsToMany::make('Ingrediente')->fields(function () {
        return [
          Number::make('Quantità', 'qta'),
          HasMany::make('unitaMisura', 'unitaMisura')
        ];
      }),
...

Когда я открываю значение qta формы;unita_misura не отображается.Можешь мне помочь?спасибо!

...