在create_users_table中,我将列的名称从'name'更改为'username'。但是,在设置数据库seeder时,我收到以下错误:
SQLSTATE[42S22]:未找到列:1054“field list”中的未知列“name”(连接:mysql,SQL:插入users
(name
,email
,email_verified_at
,password
,remember_token
,updated_at
,created_at
)
这是DatabaseSeeder中的一行:$user = User::factory()->create();
我尝试在User模型中更改fillable属性,但仍然存在同样的问题。我不知道该改哪个文件。
2条答案
按热度按时间2admgd591#
我想你正在寻找一个文件名为:
UserFactory.php
它应该位于以下路径:
\database\factories\
如果您找不到它,我建议您检查该目录中具有类似名称任何其他文件。
要刷新数据库迁移,请执行以下操作:
要设置数据库种子,请执行以下操作:
如果在迁移过程中出现错误,可以尝试删除
migrations
表,然后重新运行迁移命令。请注意,运行
php artisan migrate:refresh
命令确实会重置数据库并删除所有现有数据。fnx2tebb2#
确保数据库具有正确的列名,并尝试在seeder示例中插入完整对象:
我使用的是QueryBuilder,但你可以随时使用Eloquent和你的模型。