我安装了freezenode管理员包。这很棒但是我遇到了问题。 当我在网址中写'admin'时,没有任何登录,它直接将我重定向到管理页面,我需要设置权限,所以当然我需要用户登录。我应该在哪里放置我的登录页面并在检查后将其连接(重定向)到管理页面?我更改了login_path字段的administrator.php文件,很多次,但它总是给我一个未找到的exeption。我使用laravel 4.1。
谢谢你的时间。答案 0 :(得分:1)
我还没有使用FrozenNode的管理员软件包一段时间了,但是你确保你的config / packages / frozennode / administrator / administrator.php配置文件在{{1}中有以下内容吗? } key:
permission
我模糊地回忆起它默认为空白(这意味着没有用户检查)所以你只需要添加它。
同样值得查看同一个配置文件中的'permission'=> function () {
return Auth::check();
},
密钥,因为它设置了管理员重定向未经身份验证的用户的路径。
See here,说明此文件中的设置。
值得注意的是,管理员不会为您处理您的身份验证(或授权)。但是,它允许您将身份验证系统插入其中,这就是存在这些设置的原因。因此,为了让管理员使用身份验证,您需要做的各种事情是:
login_path
键应该指向一个闭包,如果用户已登录(并且能够访问管理,如果你有一个更复杂的auth系统),则返回true;如果没有,则返回false - 在普通Laravel中&# 39;简单permission
return Auth::check();
键应指向您的登录表单路由的URI(如果您希望使用命名路由,则可以使用login_path
来获取此设置的值)URL::route('named.route')
应指向您的退出路线(同样位于重新URI /命名路线之上)logout_path
密钥应设置为您希望能够计算出“预期”值的任何值。登录后的网址 - 发布登录表单并成功通过身份验证后,您使用login_redirect_key
重定向到此网址 - 此处默认设置正常