нужна помощь по аутентификации пользователя Laravel. мои знания о Laravel очень малы, я имел опыт развертывания веб-приложения на основе чистого / чистого PHP (никогда не имел опыта работы с фреймворком).
Идея состоит в том, чтобы позволить оператору ввести первого и только одного пользователя в систему через стандартный процесс регистрации Laravel, и этот пользователь автоматически станет суперпользователем.
Функция суперпользователя — управлять регистрацией обычного пользователя (внутри сеанса суперпользователя), создавая пользователя & пароль и определить роль обычных пользователей.
Я определяю пользовательскую таблицу следующим образом: я добавляю столбец user_role для различающихся ролей между пользователями.
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->char('user_role')->nullable();
$table->rememberToken();
$table->timestamps();
});
Значение user_role для суперпользователя должно быть 0, тогда как другая роль обычного пользователя должна быть числами от 1 до 9.
содержимое / просмотры каждого раздела веб-страницы будут отображаться в зависимости от значения user_role.
нужна помощь как:
user-registration page/url
если ни один пользователь не определен в таблице пользователей.Из вашей структуры таблицы я предполагаю, что вы управляете ролями в таблице пользователей. Теперь, когда вы хотите разрешить определенную роль пользователя для какой-то части, просто проверьте роль пользователя.
if(Auth::user()->user_role==0){
//do something its super user
}
В шаблоне клинка вы можете проверить следующим образом.
@if(Auth::user()->user_role==0)
<!--do some thing, its super user-->
@endif
Показать регистрационную форму, если в таблице нет пользователя. В своем блейде вы можете выбрать данные из таблицы пользователей, а затем проверить, пуста ли таблица пользователей.
<?php $users=App\User::all(); ?>
@if($users ===null)
<!--users table is empty show registration form-->
@endif
Других решений пока нет …