是否可以手动注册用户(与工匠?)而不是通过身份验证注册页面?
我只需要一些用户帐户,并想知道是否有办法创建这些帐户而无需设置注册控制器和视图。
答案 0 :(得分:68)
我想你想一次性做这件事,所以不需要像创建Artisan命令那样花哨的东西等等。我建议只使用php artisan tinker
(很棒的工具!)并添加以下命令每位用户:
$user = new App\User();
$user->password = Hash::make('the-password-of-choice');
$user->email = 'the-email@example.com';
$user->name = 'My Name';
$user->save();
答案 1 :(得分:4)
是的,您可以轻松编写数据库seeder并以这种方式为您的用户播种。
答案 2 :(得分:4)
是的,最好的选择是创建一个播种机,这样您就可以随时重复使用它。
例如,这是我的UserTableSeeder
:
class UserTableSeeder extends Seeder {
public function run() {
if(env('APP_ENV') != 'production')
{
$password = Hash::make('secret');
for ($i = 1; $i <= 10; $i++)
{
$users[] = [
'email' => 'user'. $i .'@myapp.com',
'password' => $password
];
}
User::insert($users);
}
}
创建此播种机后,您必须运行composer dumpautoload
,然后在database/seeds/DatabaseSeeder.php
中添加以下内容:
class DatabaseSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
Model::unguard();
$this->call('UserTableSeeder');
}
}
现在,每次需要在表格中插入用户时,最终都可以使用php artisan db:seed --class=UserTableSeeder
。
答案 3 :(得分:1)
您可以使用 Model Factories 生成几个用户帐户来使用它。写一个播种机也可以完成工作。
答案 4 :(得分:1)
这是一个古老的帖子,但是如果有人想在Laravel 5. *中使用命令行来完成它,这是一个简单的方法:
php artisan tinker
然后键入(替换为您的数据):
DB::table('users')->insert(['name'=>'MyUsername','email'=>'thisis@myemail.com','password'=>Hash::make('123456')])
答案 5 :(得分:0)
php 工匠修补匠
class EmptyClass
{
};