Authentication 登录nova&;具有多用户模型的laravel
我将Laravel5.8与nova一起使用,需要两种用户模型,a_用户和b_用户。a_用户应该能够登录到laravel应用程序,b_用户应该能够登录到novaAuthentication 登录nova&;具有多用户模型的laravel,authentication,laravel-5,laravel-nova,Authentication,Laravel 5,Laravel Nova,我将Laravel5.8与nova一起使用,需要两种用户模型,a_用户和b_用户。a_用户应该能够登录到laravel应用程序,b_用户应该能够登录到nova 不同的用户不能在同一个数据库表中 我使用以下代码来绕过您的问题。快乐编码 // database\migrations\2019_07_23_075330_create_a_users_table.php public function up() { Schema::create('a_users', fu
不同的用户不能在同一个数据库表中 我使用以下代码来绕过您的问题。快乐编码
// database\migrations\2019_07_23_075330_create_a_users_table.php
public function up()
{
Schema::create('a_users', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
// database\migrations\2019_07_23_075443_create_b_users_table.php
public function up()
{
Schema::create('b_users', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
// .env
NOVA_GUARD=loginnova
// config\auth.php
<?php
return [
'defaults' => [
'guard' => 'web',
'passwords' => 'users',
],
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'a_users',
],
'loginnova' => [
'driver' => 'session',
'provider' => 'b_users',
],
'api' => [
'driver' => 'token',
'provider' => 'a_users',
'hash' => false,
],
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'b_users' => [
'driver' => 'eloquent',
'model' => App\BUser::class,
],
'a_users' => [
'driver' => 'eloquent',
'model' => App\AUser::class,
],
// 'users' => [
// 'driver' => 'database',
// 'table' => 'users',
// ],
],
'passwords' => [
'users' => [
'provider' => 'users',
'table' => 'password_resets',
'expire' => 60,
],
],
];
// app\Nova\AUser.php
<?php
namespace App;
use Illuminate\Auth\Authenticatable;
use Illuminate\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Auth\Passwords\CanResetPassword;
use Illuminate\Foundation\Auth\Access\Authorizable;
use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract;
use Illuminate\Contracts\Auth\Access\Authorizable as AuthorizableContract;
use Illuminate\Contracts\Auth\CanResetPassword as CanResetPasswordContract;
class AUser extends Model implements
AuthenticatableContract,
AuthorizableContract,
CanResetPasswordContract
{
use Authenticatable, Authorizable, CanResetPassword, MustVerifyEmail;
}
// app\BUser.php
<?php
namespace App;
use Illuminate\Auth\Authenticatable;
use Illuminate\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Auth\Passwords\CanResetPassword;
use Illuminate\Foundation\Auth\Access\Authorizable;
use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract;
use Illuminate\Contracts\Auth\Access\Authorizable as AuthorizableContract;
use Illuminate\Contracts\Auth\CanResetPassword as CanResetPasswordContract;
class BUser extends Model implements
AuthenticatableContract,
AuthorizableContract,
CanResetPasswordContract
{
use Authenticatable, Authorizable, CanResetPassword, MustVerifyEmail;
}
//数据库\migrations\2019\u 07\u 23\u 075330\u创建用户\u table.php
公共职能
{
Schema::create('a_users',函数(Blueprint$表){
$table->bigIncrements('id');
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
//数据库\migrations\2019\u 07\u 23\u 075443\u创建\u b\u用户\u table.php
公共职能
{
Schema::create('b_users',函数(Blueprint$表){
$table->bigIncrements('id');
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
//环境署署长
新卫兵=loginnova
//config\auth.php