尝试在 Laravel 中创建一个禁止按钮。不要收到任何错误只是找不到 - Laravel 8
Trying to create a ban button in Laravel. Don't get any error just get not found - Laravel 8
这是我的控制器方法
public function blockUser(User $user)
{
$user = User::findOrFail($user->id);
$user->blocked_at = Carbon::now();
$user->save();
return Redirect()->route('admin.users.index')->with('User has been blocked');
}
这是我的web.php
Route::group(['middleware' => ['admin']], function () {
Route::get('/admin', [App\Http\Controllers\HomeController::class, 'adminView'])->name('admin.view');
Route::get('/admin/users', [App\Http\Controllers\UserController::class, 'index'])->name('admin.users.index');
Route::delete('/admin/users/{user}', [App\Http\Controllers\UserController::class, 'adminDelete'])->name('admin.users.destroy');
Route::get('/admin/posts', [App\Http\Controllers\AdminController::class, 'index'])->name('admin.posts.index');
Route::put('/admin/users/{users}', [App\Http\Controllers\UserController::class, 'blockUser'])->name('admin.users.ban');
});
这是我的blade
<td>
<button type="button" class="btn btn-sm btn-outline-danger" onclick="event.preventDefault(); document.getElementById('ban-user-from-{{ $user->id }}').submit()">
<i class="fas fa-ban" title="Ban"></i>
</button>
<form id="ban-user-from-{{ $user->id }}" action="{{ route('admin.users.ban', [$user->id]) }}" method="POST" style="display: none">
@csrf
@method("PUT")
</form>
</td>
我的数据库中有一个 blocked_at 列,并且已经完成了中间件和内核的功能。如果我手动将今天的日期添加到该字段的数据库中,用户将被阻止,并且当他们尝试登录时会出现一条消息。但是我现在正在尝试为管理面板创建一个按钮,以便管理员可以阻止用户。
更换控制器:
public function blockUser(Request $request)
{
$user = User::findOrFail($request->users);
$user->blocked_at = Carbon::now();
$user->save();
return Redirect()->route('admin.users.index')->with('User has been blocked');
}
这是我的控制器方法
public function blockUser(User $user)
{
$user = User::findOrFail($user->id);
$user->blocked_at = Carbon::now();
$user->save();
return Redirect()->route('admin.users.index')->with('User has been blocked');
}
这是我的web.php
Route::group(['middleware' => ['admin']], function () {
Route::get('/admin', [App\Http\Controllers\HomeController::class, 'adminView'])->name('admin.view');
Route::get('/admin/users', [App\Http\Controllers\UserController::class, 'index'])->name('admin.users.index');
Route::delete('/admin/users/{user}', [App\Http\Controllers\UserController::class, 'adminDelete'])->name('admin.users.destroy');
Route::get('/admin/posts', [App\Http\Controllers\AdminController::class, 'index'])->name('admin.posts.index');
Route::put('/admin/users/{users}', [App\Http\Controllers\UserController::class, 'blockUser'])->name('admin.users.ban');
});
这是我的blade
<td>
<button type="button" class="btn btn-sm btn-outline-danger" onclick="event.preventDefault(); document.getElementById('ban-user-from-{{ $user->id }}').submit()">
<i class="fas fa-ban" title="Ban"></i>
</button>
<form id="ban-user-from-{{ $user->id }}" action="{{ route('admin.users.ban', [$user->id]) }}" method="POST" style="display: none">
@csrf
@method("PUT")
</form>
</td>
我的数据库中有一个 blocked_at 列,并且已经完成了中间件和内核的功能。如果我手动将今天的日期添加到该字段的数据库中,用户将被阻止,并且当他们尝试登录时会出现一条消息。但是我现在正在尝试为管理面板创建一个按钮,以便管理员可以阻止用户。
更换控制器:
public function blockUser(Request $request)
{
$user = User::findOrFail($request->users);
$user->blocked_at = Carbon::now();
$user->save();
return Redirect()->route('admin.users.index')->with('User has been blocked');
}