Laravel 5.1表单 - 'files' => true

4

我使用Laravel HTML创建表单,但是遇到了问题,我的表单创建代码如下:

{!! Form::open(['url'=>'vocuhers','files' => 'true','enctype'=>'multipart/form-data']) !!}

    @include('vouchers.form',['submitButtonText'=>'Click to Add New Vocuher'])

{!! Form::close() !!}

但是当我在浏览器中查看我的HTML表单时,只有:
<form method="POST" action="http://localhost:8888/vouchers" accept-charset="UTF-8">
   <input name="_token" type="hidden" value="dfgdfgdfgdfgdf">

所以,这里是什么地方?
enctype="multipart/form-data"

能让我从表单上传文件的方法是什么?

为什么我没有得到这个HTML输出:

<form method="POST" action="https://bedbids.com/chats" accept-charset="UTF-8" enctype="multipart/form-data">
  <input name="_token" type="hidden" value="dsfdfgdfgdfgdfg">

这里的问题究竟是什么?

你确定你在正确的页面上吗?你的 url 写的是 vocuhers,而你的 action 写的是 vouchers - Markinson
我解决了,这里没有问题。 - Aleks Per
我的控制器出了问题... 我想用 vocuher.create,但我输入了 voucher.index... 感谢您的帮助。 - Aleks Per
4个回答

7

您的语法错误。以下代码对我有效:

{{Form::open(array('url' => 'your_url', 'method' => 'post', 'files' => true))}}

我也尝试将“class”添加到表单中,但不起作用:{{Form :: open(array('url' => 'vouchers','class'=>'form-new',method' =>'post','files'=> true))}} - Aleks Per

2

请按以下方式将url更改为route

{{!! Form::open(['route'=>'vocuhers','class'=>'your_class','files'=>true]) !!}} 

不,无法将新元素添加到表单标签中...我还删除了IlluminateHTML,现在只剩下Laravel Collective。 - Aleks Per

0

将其改为如下格式:

{!! Form::attributes(['enctype'=>"multipart/form-data"])open(['url'=>'vocuhers']) !!}

1
你的回答可以通过提供更多支持信息来改进。请编辑以添加进一步的细节,例如引用或文档,以便他人可以确认你的答案是正确的。您可以在帮助中心找到有关如何编写良好答案的更多信息。 - Community

0
{!! Form::open(['url'=>'vocuhers','files' => 'true','enctype'=>'multipart/form-data']) !!}

将其更改为

{!! Form::open(['url'=>'vocuhers','files' =>true,'enctype'=>'multipart/form-data']) !!}

正如 马金森 所说


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接