如何在 laravel 5.6 的一个刀片文件中使用不同的形式
Posted
技术标签:
【中文标题】如何在 laravel 5.6 的一个刀片文件中使用不同的形式【英文标题】:how to use different forms in one blade file in laravel 5.6 【发布时间】:2019-01-10 05:20:40 【问题描述】:我正在使用 laravel 5.6,并且正在开发自动分类 Web 应用程序。在我的应用程序中,我有 3 种不同的车辆类别,如汽车、货车、卡车,并且我有刀片文件来选择这三种不同的车辆类型。当我选择这辆车时,我的网址显示如下,
http://localhost:8000/post-ad/Truck/8 <- this is category id
http://localhost:8000/post-ad/van/7
http://localhost:8000/post-ad/Car/5
现在当我点击上述车辆类别页面重定向到 show.blade.php 文件时,现在我需要 3 个不同的表单来向每辆车辆提交数据,这是我的车辆表单,汽车表单
<form method="post" action="url('form')" enctype="multipart/form-data">
csrf_field()
<input type="hidden" id="cid" name="cid" value=" $catagories->id " />
<div class="form-group">
<label for="exampleFormControlSelect1">District</label>
<select class="form-control" id="exampleFormControlSelect1" name="district">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Town</label>
<select class="form-control" id="exampleFormControlSelect1" name="town">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Brand</label>
<select class="form-control" id="exampleFormControlSelect1" name="brand">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Model</label>
<select class="form-control" id="exampleFormControlSelect1" name="model">
</select>
</div>
</form>
货车形式
<form method="post" action="url('form')" enctype="multipart/form-data">
csrf_field()
<input type="hidden" id="cid" name="cid" value=" $catagories->id " />
<div class="form-group">
<label for="exampleFormControlSelect1">District</label>
<select class="form-control" id="exampleFormControlSelect1" name="district">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Town</label>
<select class="form-control" id="exampleFormControlSelect1" name="town">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Brand</label>
<select class="form-control" id="exampleFormControlSelect1" name="brand">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Model</label>
<select class="form-control" id="exampleFormControlSelect1" name="model">
</select>
</div>
</form>
卡车形式
<form method="post" action="url('form')" enctype="multipart/form-data">
csrf_field()
<input type="hidden" id="cid" name="cid" value=" $catagories->id " />
<div class="form-group">
<label for="exampleFormControlSelect1">District</label>
<select class="form-control" id="exampleFormControlSelect1" name="district">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Town</label>
<select class="form-control" id="exampleFormControlSelect1" name="town">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Brand</label>
<select class="form-control" id="exampleFormControlSelect1" name="brand">
</select>
</div>
<div class="form-group">
<label for="exampleFormControlSelect1">Model</label>
<select class="form-control" id="exampleFormControlSelect1" name="model">
</select>
</div>
</form>
当一些用户单击一个刀片文件上的每个车辆链接时,我需要显示每个表单。我该怎么做?
【问题讨论】:
您可以简单地创建一个表单并为车辆类型添加htmlselect
不能,因为这是一些例子,我有不同形式的不同数据
【参考方案1】:
您可以为您的路线添加名称,例如:
Route::group(['prefix' => 'post-ad'], function ()
Route::get('Truck/id', 'TruckController@fetch')->name('track');
Route::get('Van/id', 'VanController@fetch')->name('van');
Route::get('Car/id', 'CarController@fetch')->name('car');
)
将您的表单放到另一个文件中,例如:
truck-form.blade.php
van-form.blade.php
car-form.blade.php
在你看来:
@if(request()->route()->getName() = 'track')
@include('truck-form')
@elseif(request()->route()->getName() = 'van')
@include('van-form')
@elseif
@include('van-form')
@endif
【讨论】:
如果有其他条件,我应该把它放在哪里?根据我的问题在我的 show.blade.php 文件中? 这里有一个问题。我正在使用我的路线,因为这个 localhost:8000/post-ad/van/7 van 表示类别名称,7 是类别 ID。那么,我该如何根据您的回答设置我的路线,例如 Route::get('Truck/id', 'TruckController@fetch')->name('track');跨度> @banda 更新答案,只是带前缀的用户组,我认为您需要更多关于 laravel 中的路由laravel.com/docs/5.6/routing 好的,我得到了路线,但控制器仍有一些问题我已经为车辆创建了控制器,但不知道将 fetch 方法放在这里.. 实际上我是新手laravel public function fetch($id) $car = Car::where('id', $id)->first(), return view('show', ['vehicle' => $汽车]);以上是关于如何在 laravel 5.6 的一个刀片文件中使用不同的形式的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 5.1 如何在刀片文件上使用 old('') 助手进行无线电输入