У меня три модели
Разработчик модель:
миграция:
$table->increments('id');
$table->string('email')->unique();
$table->unsignedInteger('programming_language_id');
$table->unsignedInteger('language_id');
$table->timestamps();
и функция
class Developer extends Model
{
public function programming_languages() {
return $this->hasMany('App\ProgrammingLanguage');
}
public function languages() {
return $this->hasMany('App\Language');
}
}
Язык программирования модель:
миграция:
$table->increments('id');
$table->string('name')->unique();
$table->timestamps();
и функция:
protected $table = 'programming_languages';
public function developers() {
return $this->belongsToMany('App\Developer');
}
Язык Модель:
Миграция:
$table->increments('id');
$table->string('code', 30)->unique();
$table->timestamps();
и функция:
public function developers() {
return $this->belongsToMany('App\Developer');
}
Я хочу сделать СБ и быть отношениями между ними. Как я могу это сделать?
Я пытаюсь: создать фабрику DeveloperFactory
$factory->define(App\Developer::class, function (Faker $faker) {
return [
'email' => $faker->unique()->safeEmail,
'programming_language_id' => function () {
return factory(App\ProgrammingLanguage::class)->create()->id;
},
'language_id' => function () {
return factory(App\Language::class)->create()->id;
}
];
});
seed OK, но это не создает никаких отношений. Просто запишите данные.
Как я могу это сделать с помощью db: seed?