【问题标题】:Undefined variable: request - Laravel 5.1未定义的变量:请求 - Laravel 5.1
【发布时间】:2019-02-18 10:10:27
【问题描述】:

我已将它包含在我的文件顶部

use Request;

还有,

use Illuminate\Http\Request;


当我尝试使用时

$files = $request->file('images');
dd($files);

我一直得到

PortfolioController.php 第 113 行中的 ErrorException: 未定义变量:请求

为什么?

根据5.1的文档

https://laravel.com/docs/5.1/requests

使用 Illuminate\Http\Request;

应该够了。


控制器

public function update($id) {

    $files = $request->file('images');

    ...

}

【问题讨论】:

  • 显示控制器功能,应该有$request变量注入。
  • 尝试 Request::file('images) 或将 $request 变量注入到您的函数调用中。
  • 注入 $request 这样public function update(Request $request, $id) { ... }
  • @Webinion :啊,明白了。

标签: php laravel laravel-5 laravel-5.1


【解决方案1】:

只需删除use Request; 在您的控制器的操作中,您应该使用请求作为参数:

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class PortfolioController extends Controller {

    public function update(Request $request, $id) {
        $files = $request->file('images');

        dd($files, $id);
        // the rest of your code
    }
}

【讨论】:

  • 我的是更新函数,不是索引,里面有参数$id
  • @kyo 我添加了一个 ID!希望对您有所帮助!
  • 当我按照你的建议更新参数时,我得到了这个:i.imgur.com/M9y5GTD.png
  • 你确定public function update(Request $request, $id) { 是正确的吗? ``
  • @kyo 是正确的。您还可以按update($id, Request $request) 的顺序更改参数,使其看起来更清晰。
猜你喜欢
  • 2019-08-10
  • 2016-01-21
  • 2022-01-04
  • 1970-01-01
  • 2018-10-09
  • 2016-01-24
  • 2019-04-29
  • 1970-01-01
  • 2015-05-15
相关资源
最近更新 更多