You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
với admin_auth_signin là route Signin vào admin , vào $this->authed sẽ là biến lưu instance User đăng nhập vào hệ thống mà trong Controller Signin $this->app['session']->set('admin_authed', $user);
Công việc là chỉ cần extends AuthedController những Controller muốn bảo vệ Admin là xong. ví dụ
<?phpnamespaceApp\Controller\Admin;
class CategoryController extends AuthedController {
}
The text was updated successfully, but these errors were encountered:
controller này hình như nó vẫn thực hiện lệnh mặc dù không đăng nhập.
em có 1 route là '/delete-post/{alias}' => 'Admin\PostController:delete:admin_post_delete',
PostController extends AuthedController, nhưng em thử copy link vào trình duyệt ẩn danh chạy.
thì nó redirect về trang sign in, nhưng vẫn thực hiện lệnh delete trong hàm deleteAction
trong csdl vẫn bị mất dữ liệu
em khắc phục bằng cách thay vì return $this->app->terminate($this->request, $response);
thì em exit() luôn, nó vẫn redirect về trang sign in và không thực hiện lệnh delete
em không biết cái phần "return $this->app->terminate($this->request, $response);" có gì đặc biệt không. có bỏ đi giống như em đang làm được không.
Các bạn nên refactor những đoạn code có số lần lặp lại > 2 lần
Ví dụ điển hình là viết các controller admin, các bạn thường viết đoạn sau đầu mỗi method (quá dư thừa, cần refactor lại)
Giải pháp : dùng OOP chẳng hạn
AuthedController.php
có nội dung như sauvới
admin_auth_signin
là route Signin vào admin , vào$this->authed
sẽ là biến lưu instanceUser
đăng nhập vào hệ thống mà trong Controller Signin$this->app['session']->set('admin_authed', $user);
Công việc là chỉ cần
extends AuthedController
những Controller muốn bảo vệ Admin là xong. ví dụThe text was updated successfully, but these errors were encountered: