我是laravel框架的新手,正在尝试在我的网站上实现登录系统。我的网站有一个登陆页面。根据用户登录状态,我需要像下面这样更改此链接。@if(Auth::guard('customer')->check())Logout@elseLoginorRegister@endif这是负责加载这个View的Controller我收到一条错误消息说Class'Auth'notfound我尝试添加useAuth和use\Auth按照stackoverflow中其他更复杂的问题的建议,但对我不起作用。我究竟做错了什么。无法从View中检查调用Auth吗? 最佳答案
我正在尝试使用apitoken实现新的Laravel5.3auth:apimiddleware。因为我已经有一个包含“ApiToken”字段的旧用户表,所以我想将TokenGuardstorageKey属性(可能还有inputKey)更改为“ApiToken”而不是“api_token”。类似于getRememberTokenName方法,但是我找不到“getApiTokenName”方法。有没有一种方法可以在不更改LaravelTokenGuard源代码的情况下完成此操作? 最佳答案 您不能覆盖TokenGuard类中的stora
在config/database.php中,我有两个连接:mysql和website。两者都连接到同一台主机,只是数据库不同。默认为mysql。我创建了一个名为SetupWebsite的中间件,它检查传入域是否存在于默认连接的数据库中。如果是,它会使用以下代码用正确的数据库填充website连接:config(['database.connections.website.database'=>$database]);然后,它将默认连接切换到网站:config(['database.default'=>'website']);我通过从数据库中检索一个仅存在于website连接中的值来验证
我用laravel5.3编写了一个脚本,检查运行时给定语言中是否存在lang键。如果密钥不存在,它会将其添加到文件中。但是,如果第一次周围的密钥不存在,我添加它,然后我做另一个检查“在同一请求期间”看是否存在该密钥,它会说它不存在。所以加载的语言将不会意识到我在文件中添加了新的密钥,因为laravel在内存中加载了密钥,而我只是在硬盘上写入文件。这就是我检查当前是否存在密钥的方法Lang::has($key,$language,false);当我评估Illuminate\Translation\Translator类时,我看到load方法检查一个组是否被加载,它不会再次加载它。这是拉维
我已经使用一个简单的命令创建了身份验证所需的路由和View:phpartisanmake:auth登录和注册部分一切正常。但是,当我去Controller的构造函数检查用户是否已登录时,我总是得到错误的响应;即使用户已登录!publicfunction__construct(){dd(Auth::check());}有什么想法吗?!是的,我确实在顶部使用了useAuth;。 最佳答案 中间件(并因此设置登录用户)直到Controller构造函数之后才会发生。有关详细信息,请参阅此相关问题/答案:Laravel5Authisnonob
在不生成Laravel默认身份验证Controller的情况下,我创建了自己的登录和注册Controller。我的路线是这样的登录GET/login->>SessionController@create-->name=login.createPOST/login->>SessionController@store-->name=login.store注册GET/registration->>RegistrationController@create-->name=register.createPOST/registration->>RegistrationController@stor
我想检查用户是否通过JavaScriptfetch()函数登录。但它总是返回false,但如果我直接在地址栏中调用URL,它会按预期返回true。这是代码:/routes/web.phpRoute::get('check-login',function(){if(Auth::check()){returnresponse()->json(['isLogin'=>'ok']);}else{returnresponse()->json(['isLogin'=>'no']);}});javascript:fetch('/check-login',{headers:{'Accept':'app
我尝试使用GitHub在我的Laravel项目中安装voyager管理包。它有3个步骤来完成。第3步我有这个错误:Exceptiontrace:1Doctrine\DBAL\Driver\PDOException::("SQLSTATE[42000]:Syntaxerrororaccessviolation:1071Specifiedkeywastoolong;maxkeylengthis767bytes")B:\xampp\htdocs\gholi\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOStatement.php:1442P
我想在公司模型和工作模型之间建立联系但它给了我这个错误:PDOException::("SQLSTATE[HY000]:Generalerror:1005Can'tcreatetable`my-career`.`#sql-2fd8_ba`(errno:150"Foreignkeyconstraintisincorrectlyformed")")公司模式:classCompanyextendsModel{public$table="comppanies";publicfunctionjobs(){return$this->hasMany(App\Job::class);}}工作模型:cl
我需要一个控制器的一个公开可用的动作,这样用户就可以在不经过认证的情况下请求它。publicfunctionbehaviors(){return['access'=>['class'=>AccessControl::className(),'only'=>['callback'],'rules'=>[['allow'=>true,'actions'=>['callback'],],],],];}我尝试了以下选项,但仍然收到BadRequest(#400)并重定向到登录页。我该如何解决这个问题? 最佳答案 我猜你是想发一个邮件请求。只