Я использую Kalnoy / Nestedset и пытаюсь заполнить таблицу комментариев с помощью фейкера, но получаю ошибку «Преобразование массива в строку».
Таблица комментариев выглядит следующим образом:
Schema::create('comments', function (Blueprint $table) {
$table->increments('id');
$table->unsignedInteger('user_id');
$table->unsignedInteger('post_id');
$table->text('body');
$table->timestamps();
$table->nestedSet();
});
Фабрика комментариев:
use Faker\Generator as Faker;
$factory->define(
App\Models\Comment::class,
function (Faker $faker) {
return [
'user_id' => function () {
return factory('App\Models\User')->create()->id;
},
'post_id' => function () {
return factory('App\Models\Post')->create()->id;
},
'body' => $faker->paragraph,
];
}
);
И я не могу понять, как должна выглядеть сеялка.Вот моя попытка:
public function run(Post $post)
{
$node = factory('App\Models\Comment'::class, 3)->create([
'children' => [
[
factory('App\Models\Comment'::class, 2)->create([
'post_id' => $post->id
]),
'children' => [
[ factory('App\Models\Comment'::class, 1)->create([
'post_id' => $post->id
]),
],
],
],
],
]);
}
}
Я также хочу удостовериться, что идентификатор записи потомков такой же, как и у родителя, но теперь он возвращает ноль.