在 Laravel 5.1 中使用 Blade 访问嵌套 URL
Posted
技术标签:
【中文标题】在 Laravel 5.1 中使用 Blade 访问嵌套 URL【英文标题】:Accessing Nested URL Using Blade in Laravel 5.1 【发布时间】:2016-05-20 11:46:00 【问题描述】:我正在尝试使用 Laravel 5.1 中的嵌套 url 访问页面,但我已经走到了死胡同。 我想在 url 中间使用参数发出 GET 请求。准确地说,cars/cars/edit。 这是我的代码:
在路由文件中
Route::resource('cars', 'carController');
在汽车控制器文件中
class carController extends Controller
public function index()
$cars = Car::all();
return view('carshome', compact('cars'));
public function edit($id)
return 'Welcome: '.$id.'page';
在汽车之家刀片模板文件中
@foreach ($cars as $car)
<tr>
<td> $car->name </td>
<td> $car->type </td>
<td class="text-center">
<a href = url('/cars',[$car->name])>
<i class="fi-clipboard-pencil"></i>
</a>
<a href = url('/cars',[$car->name])>
<i class="fi-x-circle"></i>
</a>
</td>
</tr>
@endforeach
在汽车模型文件中
class Car extends Model
protected $fillable = [
'name', 'type'
];
辅助函数url 可以将参数作为url 的一部分。我不确定如何创建自定义 url。如何使用刀片访问 url 资源?
【问题讨论】:
tbh,使用Route::resource('cars', 'carController');
可以避免使用url(..)
。你可以使用route('cars.edit', [$car->name])
就这么简单。附言。用documentation on restful resource controller确认。
正如@Tezla 所写,但您仍然可以使用url()
,例如url('cars', [$car->id, 'edit'])
。
哇,谢谢@Tezla,它有效。我不知道在哪里可以将您的评论标记为正确。
谢谢你,@lamzozo。你的回答同样正确。
【参考方案1】:
这只是为了将问题标记为已回答。作为@Tezla 分享: 在我可以使用的汽车之家刀片模板文件中:
route('cars.edit', [$car->name])
@lamzozo建议在汽车之家刀片模板文件中使用另一种工作方法:
url('cars', [$car->name, 'edit'])
【讨论】:
以上是关于在 Laravel 5.1 中使用 Blade 访问嵌套 URL的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Laravel 5.1 中从 Blade 调用控制器动作?
Laravel 5.1 Ajax 从 Blade View 获取 html