как засеять отношения "один ко многим" в laravel 7 - PullRequest
1 голос
/ 05 мая 2020

У меня есть эти миграции, и я хочу видеть их с использованием заводской модели

Категория миграции:

    Schema::create('categories', function (Blueprint $table) {
        $table->id('id_cat');
        $table->string('nom');

    });

марка миграции:

        Schema::create('marques', function (Blueprint $table) {
        $table->id('marque_id');
        $table->foreignId('cat_id')->constrained();
        $table->string('designation');
    });

при запуске эта заводская модель не работает

завод категории:

$factory->define(Category::class, function (Faker $faker) {
return [
    'nom' => $faker->unique()->word
];

});

завод марки:

$factory->define(Marque::class, function (Faker $faker) {
return [
    'cat_id' => Category::all()->random()->id,
    'designation'=>$faker->unique()->word
];

});

1 Ответ

0 голосов
/ 05 мая 2020

Вы должны убедиться, что заполняемый массив массового назначения вашего свойства модели заполнен.

пример для Category::class:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Category extends Model
{
   /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = ['nom'];

}

Вы должны сделать то же самое для другого вашего класса массовое присвоение собственности. Чтобы получить больше информации о прочтите это . Удачи и удачного кодирования!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...