【发布时间】:2023-03-25 20:28:02
【问题描述】:
我正在使用 laravel 5.6。在我的应用程序中,我有这样的表名 vehicles,
id name model year categoryname user_id
1 toyota 121 2001 car 1
2 nissan sunney 1998 car 2
3 toyota liteace 2000 van 5
4 isuzu elf 2005 truck 9
5 bmw 520d 2010 car 7
现在我需要根据车辆表的类别名称重定向每个车辆编辑表单。我有这样的控制器编辑功能?
public function edit($id)
{
if (Vehicle::where('categoryname', 'Car')) {
$vehicles = Vehicle::find($id);
$town_list = Town::with('district.province')->groupBy('provincename')->get();
$model_list = DB::table('modols')
->groupBy('categoryname')
->get();
return view('vehicles.caredit')->withVehicles($vehicles)->withTown_list($town_list)->withModel_list($model_list);
}
else if (Vehicle::where('categoryname', 'Van')){
$vehicles = Vehicle::find($id);
$town_list = Town::with('district.province')->groupBy('provincename')->get();
$model_list = DB::table('modols')
->groupBy('categoryname')
->get();
returnview('vehicles.vanedit')->withVehicles($vehicles)->withTown_list($town_list)->withModel_list($model_list);
}
}
但是当我重定向不同的类别名称值(如 car 和 van)时,它们总是重定向到 caredit.blade.php。那么我该如何解决这个问题呢?
【问题讨论】:
-
您只是获得了查询构建器,因为您没有传递 get 选项(
->get()、->first()等)。如果您在表中同时拥有car和van,您可能还会一直点击car,因此您需要进一步限制它。 -
@aynber 我该怎么做?