У меня странная проблема, которая приводит к сбою моих модульных тестов в Laravel. У меня есть таблица, которая создается следующим образом:
Schema::create('message_threads', function (Blueprint $table) {
$table->string('id')->primary();
$table->timestamps();
$table->softDeletes();
$table->string('user_id');
$table->string('folder_id')->nullable();
$table->boolean('starred')->default(false);
$table->string('thread_id')->nullable();
$table->foreign('user_id')->references('id')->on('users');
$table->foreign('folder_id')->references('id')->on('message_folders')->onDelete('cascade');
});
И в связанной с ней модели, когда я вызываю функцию getAttributes (), поля помечены и folder_id отсутствуют.
//The code
$messageThread = factory(MessageThread::class)->create();
print_r($messageThread->getAttributes());
Выводит следующее:
(
[user_id] => USR-258995103d8c4d37bd6ec3a38dfe9312
[id] => MTD-cb4f8f66ddfc4385b31155212cb57f91
[updated_at] => 2020-02-27 14:15:55
[created_at] => 2020-02-27 14:15:55
)
Почему отсутствуют эти поля, особенно поле помеченное звездочкой , значение которого по умолчанию равно ложь?