我在Laravel中使用了新功能:
php artisan make:auth
但是当我注册它时,默认会使用数据库表users
,但我想将其更改为另一个表。默认情况下,它会在该表中使用updated_at
和created_at
,我也想删除它。
认证/ AuthController
protected function create(array $data)
{
return User::create([
'voornaam' => $data['voornaam'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
}
应用\用户
protected $fillable = [
'voornaam', 'email', 'password',
];
这是我认为会改变它的东西,但他们没有。我希望有人可以告诉我更多有关这个问题的信息。
答案 0 :(得分:8)
要更改表名,请转到app/User.php
并将属性$table
设置为自定义名称,例如:
$table = 'new_table';
您还应该更改默认迁移。转到:/database/migrations/2014_10_12_000000_create_users_table.php
文件并在此处更改users
以获取相同的名称。要删除时间戳,您可以删除行:
$table->timestamps();
但如果我是你,我会重新考虑删除这些时间戳
答案 1 :(得分:6)
请勿忘记更改REGISTERCONTOLLER.PHP中的验证。
这
fs
到
var fs = null;
if (typeof require !== 'undefined') {
fs = require('fs');
}
答案 2 :(得分:2)
默认情况下,模型将其类名作为表名!
我在App/User.php
protected $table = 'auth_users';
这告诉laravel使用auth_users
表而不是默认的user
表。
它就像魅力一样。
答案 3 :(得分:0)
使用config / auth.php和RegisterController.php中的修改检查Laravel 5.3 Change user table in Auth以寻找替代解决方案。
要禁用您也可以在模型类中使用的时间戳:
public $timestamps = false;