使用此命令安装航行包后:
php artisan voyager:install
我需要使用此命令创建管理员用户:
php artisan voyager:admin your@email.com --create
然后输入名称和密码
问题是在输入用户名和密码后,它会返回此错误
常规错误:1364字段' employee_name'没有默认值 (SQL:插入
employee
(
我已经有了一个数据库但具有不同的命名约定,例如: 用户表我称之为员工,名称字段名为employee_name
我的问题是,有没有办法将voyager中的预期字段与我数据库中的实际字段进行映射,因为我无法更改它们?
提前致谢。
答案 0 :(得分:1)
由于您更改了User模型的正常结构,并且可能会遇到与尝试添加用户的其他包类似的问题,您可以在用户模型中创建一个boot()方法,将this-> employee_name设置为此 - > name,然后取消设置this-> name,以便当其他包中的记录尝试使用name属性时,将其更正为employee_name属性。
这是基于记忆的头脑,所以它可能涉及更多的逻辑'但我想如果你看一下启动方法,你会发现你可以做这种事情。我用它来自动填充具有动态值的列。
HTH
答案 1 :(得分:0)
当您执行此命令时,Voyager creates a new user会使用质量指定功能。
所以,将$fillable
添加到User
模型:
protected $fillable = ['name', 'email', 'password'];
答案 2 :(得分:0)
一般错误:1364字段'employee_name'没有默认值
您可以在数据库中将默认值设置为null,这可以解决问题
答案 3 :(得分:0)