我的路线上有这样的东西:
+--------+---------------------------+--------------+--------------------------- ---------+----------------+---------------+
| Domain | URI | Name | Action | Before Filters | After Filters |
+--------+---------------------------+--------------+--------------------------- ---------+----------------+---------------+
| | GET|HEAD / | | postcontroller | auth | |
| | GET|HEAD login | | homecontroller@dologin | | |
| | POST login | | homecontroller@dologin | | |
| | GET|HEAD logout | | homecontroller@dologout | | |
| | GET|HEAD post | post.index | postcontroller@index | | |
| | GET|HEAD post/create | post.create | postcontroller@create | | |
| | POST post | post.store | postcontroller@store | | |
| | GET|HEAD post/{post} | post.show | postcontroller@show | | |
| | GET|HEAD post/{post}/edit | post.edit | postcontroller@edit | | |
| | PUT post/{post} | post.update | postcontroller@update | | |
| | PATCH post/{post} | | postcontroller@update | | |
| | DELETE post/{post} | post.destroy | postcontroller@destroy 现在,我想创建一个使用PUT方法的表单html。这是我的密码:
<form class="col-md-12" action="<?php echo URL::to('/');?>/post/<?=$post->postID?>" method="put">
<div class="form-group">
<textarea type="text" class="form-control input-lg" placeholder="Text Here" name="post"><?=$post->post?></textarea>
</div>
<div class="form-group">
<button class="btn btn-primary btn-lg btn-block" type="submit" value="Edit">Edit</button>
</div>
</form> 但我并不打算将表单提交到post.edit。
我搜索过了,我得到了我必须使用的解决方案
{{form:...etc但是,我希望表单仍然可以通过CSS样式来完成。有什么解决办法吗?谢谢
发布于 2015-01-26 02:45:16
您可以添加css类和刀片模板所需的任何类型的属性,尝试如下:
{{ Form::open(array('url' => '/', 'method' => 'PUT', 'class'=>'col-md-12')) }}
.... wathever code here
{{ Form::close() }}如果你不想走刀刃的路,你可以添加一个隐藏的输入。这就是Laravel所做的表格,无论如何:
注意:由于HTML只支持POST和GET,PUT和DELETE方法将通过自动向表单中添加_method隐藏字段而被欺骗。(Laravel docs)
<form class="col-md-12" action="<?php echo URL::to('/');?>/post/<?=$post->postID?>" method="POST">
<!-- Rendered blade HTML form use this hidden. Dont forget to put the form method to POST -->
<input name="_method" type="hidden" value="PUT">
<div class="form-group">
<textarea type="text" class="form-control input-lg" placeholder="Text Here" name="post"><?=$post->post?></textarea>
</div>
<div class="form-group">
<button class="btn btn-primary btn-lg btn-block" type="submit" value="Edit">Edit</button>
</div>
</form>发布于 2017-01-26 13:41:00
如果您正在使用method_field HTML表单元素而不是Laravel Form Builder,则必须在窗体开始标记和结束结束之间放置。通过这样做,您可以显式地定义表单方法类型。
<form>
{{ method_field('PUT') }}
</form>适用于Laravel 5.1及以上
<form>
@method('PUT')
</form>发布于 2018-07-16 05:52:23
就像这样在表单的某个地方使用
@method('PUT')https://stackoverflow.com/questions/28143674
复制相似问题