我想从 Laravel URL 中检索一个 id。我试过这个:$request->route('id');但它会告诉我 $request 是未定义的。我使用的网址是:http://192.168.1.14/public/tasks/create?id=1我有一个侧边栏,其中我有一个 if 语句。@if((request()->is('projects/1')) || (request()->is('tasks/create')))
<a href="{{ route('tasks.create') }}?id={{ $project->id }}">
@endif我隐藏了不必要的代码,但第二个参数用于在侧边栏中突出显示我所在的页面。当我在项目页面上时,第一个显示创建任务选项。现在, if 语句导致它被隐藏(所以我看不到错误(错误会说没有 id 但它是真的,因为它只通过在具有 id 的项目页面上接收 id ))现在,页面上的任务表单本身有一个隐藏的输入字段,project_id因此我可以将任务绑定到项目。在我拥有的值内,$request->route('id')但它给了我一个错误,即请求未定义。现在我问,我如何从 url 中检索 id,否则,我可以用另一种方式检索 id 吗?所有项目和任务刀片文件都扩展project.index和project.index扩展,layouts.blade因此它是布局中的布局。另外,我可以将其更改(request()->is('projects/1'))为其他内容,因此无论我在哪个项目页面上,该声明都是正确的?例如“项目/{项目}”谢谢你的帮助
2 回答

湖上湖
TA贡献2003条经验 获得超2个赞
最好的方法是你不需要写“创建”
{{ app('request')->input('id') }}
或者
{{ request()->get('id') }}
如果您不确定它是如何工作的,只需将其存储在一个变量中并在视图上打印以像这样进行交叉验证。
<?php
$id = app('request')->input('id');
//or
$id = request()->get('id');
?>
您始终可以像这样检查所有请求 URL 参数。
$request = request();
print_r($request);

小唯快跑啊
TA贡献1863条经验 获得超2个赞
创建从 url 获取 id 的路由示例:
Route::name('subscriptions.store')->post('/subscriptions/store/{id}', 'CreateSubscriptionController');
- 2 回答
- 0 关注
- 202 浏览
添加回答
举报
0/150
提交
取消