Ist es möglich, einen Benutzer manuell zu registrieren (mit einem Handwerker?) Und nicht über die Authentifizierungsseite?
Ich brauche nur eine Handvoll Benutzerkonten und fragte mich, ob es eine Möglichkeit gibt, diese zu erstellen, ohne die Registrierungscontroller und -ansichten einrichten zu müssen.
Ich denke, Sie möchten das einmalig machen, also gibt es keine Notwendigkeit für etwas Besonderes wie das Erstellen eines Artisan-Befehls usw. Ich würde vorschlagen, einfach php artisan tinker
(tolles Werkzeug!) Zu verwenden und die folgenden Befehle pro Benutzer hinzuzufügen:
$user = new App\User();
$user->password = Hash::make('the-password-of-choice');
$user->email = '[email protected]';
$user->save();
Ja, Sie können leicht eine Datenbank Seeder schreiben und Ihre Benutzer so säen.
Ja, die beste Option ist das Erstellen einer Sämaschine, sodass Sie diese jederzeit wiederverwenden können.
Dies ist zum Beispiel meine 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);
}
}
Nachdem Sie diesen Seeder erstellt haben, müssen Sie composer dumpautoload
ausführen und dann in Ihrem database/seeds/DatabaseSeeder.php
Folgendes hinzufügen:
class DatabaseSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
Model::unguard();
$this->call('UserTableSeeder');
}
}
Jetzt können Sie endlich php artisan db:seed --class=UserTableSeeder
verwenden, wenn Sie Benutzer in die Tabelle einfügen müssen.
Sie können Model Factories verwenden, um ein Benutzerkonto zu erstellen, das Sie bearbeiten können. Wenn Sie einen Seeder schreiben, wird die Arbeit ebenfalls erledigt.
Dies ist ein alter Beitrag, aber wenn es jemand mit der Befehlszeile in Laravel 5. * tun möchte, ist dies ein einfacher Weg:
php artisan tinker
geben Sie dann (ersetzen Sie mit Ihren Daten) ein:
DB::table('users')->insert(['name'=>'MyUsername','email'=>'[email protected]','password'=>Hash::make('123456')])