Hey @browniecoffee
For starters you could do simply this:
$project = factory(Project::class)->make([
'title' => 'Ceci est un nouveau titre',
'user_id' => factory(User::class)->create()->id(),
'category_id' => factory(Category::class)->create()->id(),
'material_id' =>factory(Material::class)->create()->id()
]);
instead of this:
$user = factory(User::class)->create();
$project = factory(Project::class)->make([
'title' => 'Ceci est un nouveau titre'
]);
$cat = factory(Category::class)->create();
$material = factory(Material::class)->create();
// dd($mat1, $mat2);
//relation between user and projects
$user->projects()->save($project);
// relation between project and user
$project->user()->associate($user)->save();
//relation between project and material
$project->materials()->save($material);
//relation between material and project
$material->project()->associate($project)->save();
//relation between project and category
$project->category()->save($cat);
//relation between category and project
$cat->categorizable()->associate($project)->save();
looks much better IMHO. It will create all the relationships necessary. Not sure if you even need the ->id() part of the factory. It will probably work without it.
What exception or error are you getting exactly?