DD($请求 - > country_flag);在laravel中返回null

时间:2016-05-14 02:56:46

标签: laravel-5

这是我上传文件的表单:

<div class="col-lg-6 col-lg-offset-3">
<form method="post" action="{{ route('admin.country.store') }}" enctype="multipart/form-data">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
    <div class="form-group">
        <label for="country_id">Country ID</label>
        <input type="number" class="form-control" id="country_id" name="country_id">
    </div>
    <div class="form-group">
        <label for="country_name">Country name</label>
        <input class="form-control" type="text" id="country_name" name="country_name">
        <p class="danger">{{ $errors->first('country_name') }}</p>
    </div>
    <div class="form-group">
        <label for="alternate_title">Alternate Title</label>
        <input class="form-control" type="text" id="alternate_title" name="alternate_title">
        <p class="danger">{{ $errors->first('alternate_title') }}</p>
    </div>
    <div class="form-group">
        <label for="country_flag">Country Flag</label>
        <input class="" type="file" id="country_flag" name="country_flag">
        <p class="danger">{{ $errors->first('country_flag') }}</p>
    </div>
    <div class="btn-group" role="group">
        <button class="btn btn-default" type="reset">Reset</button>
        <button class="btn btn-success" type="submit">Upload</button>
    </div>
</form>

这是我的控制器中处理表单请求的函数。

public function store(Request $request)
{
    $new_country = new SelectCountry();
    $message = [
        'required' => "This field can not be empty",
    ];

    $this->validate($request, [
        'country_name' => 'required',
        'alternate_title' => 'required',
        'country_flag' => 'required',
    ], $message);

    dd($request->country_flag);
}

当我执行dd($request->country_flag);时,它会返回null。好像文件不是由表单上传的。

我做错了什么?

2 个答案:

答案 0 :(得分:0)

我不确定您是否可以访问您正在执行的文件。试试这个:

$file = $request->file('country_flas');

答案 1 :(得分:0)

试试这个

$input = $request->all();
$file = $input['country_flag'];
dd($file);