草庐IT

php - RouteCompiler 中的 Laravel DomainException 变量名称在路由模式中不能超过 32 个字符

由于变量名称过长,我收到此错误。如何覆盖变量名?我很想保留资源名称。我的路线是:Route::resource('computer-software-version-installation','Web\Model\ComputerSoftwareVersionInstallationController'); 最佳答案 这是我所做的修复:Route::resource('computer-software-version-installation','Web\Model\ComputerSoftwareVersionInstall

PHPUnit Laravel 哈希不可用

我在Laravel中有一个单元测试,用于测试看起来像这样的API调用,但是在运行它时出现以下运行时错误:RuntimeException:Afacaderoothasnotbeenset.我在setup方法中创建一个用户,目的是在tearDown()方法中再次删除它,然后运行我的身份验证测试。首先,有没有更好的方法来做我想做的事?例如在不接触数据库的情况下模拟用户?其次,如何设置“外观根”或该错误的确切含义是什么?为了创建一个Dummy用户,我尝试不费心去散列该特定字段,但错误似乎转移到了模型,在该模型中(再次)使用了Hash外观类。是否有任何额外的步骤来设置环境以便这些外观可以用于测

php - 在 Laravel 中通过用户 ID 强制注销特定用户

我使用Laravel5.2,我想知道如何通过ID强制用户注销。我正在构建一个管理面板,其中包含停用当前登录到Web应用程序的特定用户的选项。Laravel为当前用户提供了这个选项。Auth::logout()但我不想注销当前用户,因为我是经过身份验证的用户。所以我需要通过其id强制注销特定用户。就像我们使用特定id登录用户一样。Auth::loginUsingId($id);有没有类似下面的东西?Auth::logoutUsingId($id); 最佳答案 目前,没有直接的方法可以做到这一点;作为StatefulGuard契约(Co

php - 通过 REST 使用 Laravel 上传文件

我正在尝试通过Postman通过Laravel中的RESTapi上传视频(我也尝试过图像)。到目前为止,我已尝试进行最简单的上传,但似乎没有任何效果。我正在向http://localhost:8000/api/videos发出POST请求使用PostMan中的“表单数据”选项并设置"file"选项,这样我就可以使用“浏览”按钮在我的电脑上查找文件并将该文件称为"file"。我在Controller中这样做:return$request->file('file')->getClientOriginalExtension();但我收到错误“调用成员函数getClientOriginalEx

php - Mac 上的 Valet : 502 bad gateway when running test. dev,laravel,php 安装

我在mac上用fpm在本地安装了php71。然后在去“pinganyting.dev”时让代客工作。然后进入“PHP_Apps”目录,我在其中安装了所有PHP应用程序,并在该目录中运行“代客泊车”。我在其中创建了一个包含index.php文件的“测试”目录。在浏览器中转到index.dev显示:502BadGatewaynginx/1.10.2还有日志文件记录:2017/01/3116:58:48[crit]285#0:*16connect()tounix:/Users/ME/.valet/valet.sockfailed(2:Nosuchfileordirectory)whileco

php - laravel Eloquent 嵌套评论和回复

几天前,我看到一个网站,用户可以在该网站上对帖子发表评论。其他用户可以对此进行回复。并且重播可以像下面的示例屏幕截图一样回复..所以我想试一试,但不知何故无法弄清楚。这是我的数据库设置Schema::create('comments',function(Blueprint$table){$table->increments('id');$table->unsignedInteger('user_id');$table->unsignedInteger('post_id');$table->unsignedInteger('reply_id')->default(0);$table->t

php - Laravel 5.4 Markdown 邮件字符问题

我正在使用Laravel5.4,我正在发送带有以下代码的Markdown邮件:publicfunctionbuild(){return$this->markdown('emails.userWasRegistered')->with('user',$this->user);}Markdown@component('mail::message')#WelcomeThankyouforregistering,youareregisteredasa{{$user->role}}@component('mail::button',['url'=>$url])Login@endcomponent

php - Laravel全局中间件获取不到session

protected$middleware=[\App\Http\Middleware\Syspoint::class,]useSession;classSyspoint{echo\Session::get('syspoint');}每次页面请求时我都需要运行一个中间件,中间件包含session。我放置在protected$middleware中,但是全局中间件无法获取session。 最佳答案 您正在调用session,但它尚未启动。如果您需要在中间件中使用Session,则必须将其放在web键下的属性protected$middl

php - laravel 中的中间件是什么?

我正在尝试了解中间件在Laravel中的工作原理。这是我的类(class),谁能解释一下它是如何工作的。?age谢谢 最佳答案 Middleware提供一种方便的过滤机制HTTP请求进入您的应用程序。例如,Laravel包括middleware验证您的应用程序的用户是否已通过身份验证。如果用户未通过身份验证,则middleware会将用户重定向到登录屏幕。但是,如果用户通过身份验证,则middleware将允许请求进一步进入应用程序。Reference编辑:如@num8er所述中间件是介于路由器和路由处理程序之间的功能(或逻辑)。在

php - 拉维尔 5.4 : Get logged in user id inside __construct()

我试图在构造函数中访问Auth::user()->id;但它总是返回错误Tryingtogetpropertyofnon-object。我在laravel文档中研究了Session在构造函数内部不可访问,并且还在SO上搜索了这个。我需要在构造函数中登录用户ID,因为我必须从数据库中获取数据并使其可用于所有方法。我当前的代码是:publicfunction__construct(){$this->middleware('auth');$induction_status=TrainingStatusRecord::where('user_id',Auth::user()->id)->whe