laravel - 如何在laravel中使用路由名称传递查询参数?
问题描述
我知道这个
{{route('editApplication', ['id' => $application->id])}} == /application/edit/{id}
但是我需要
?? == /application/edit?appId=id
任何人,请替换“??” 你的回答对我有帮助。
解决方案
这取决于您的路线看起来如何:
如果您的路线是:
Route::get('/application/edit/{id}', 'SomeController')->name('editApplication');
当你使用
route('editApplication', ['id' => 5])
网址将是这样的:
/application/edit/5
但是,所有其他参数(不在路由参数中)将用作查询字符串,例如:
route('editApplication', ['id' => 5, 'first' => 'foo', 'second' => 'bar'])
将生成这样的网址:
/application/edit/5?first=foo&second=bar
如果你想实现这样的 url
/application/edit?appId=id
你应该像这样定义路由:
Route::get('/application/edit/', 'SomeController')->name('editApplication');
然后当你使用
route('editApplication', ['appId' => 5])
你会得到
/application/edit?appId=5
网址。
推荐阅读
- sqlite - SQLITE::Statement::execute() 与 SQLITE::Database::exec()
- javascript - 来自内置语言扩展的项目范围的 Javascript/TypeScript 语言错误
- node.js - 将应用程序部署到heroku但应用程序无法启动时,如何解决“Express不是构造函数”类型错误?
- java - Angular - Maven/Spring Boot CORS 不工作
- android - 使用边距和填充时,Android GUI 看起来不同
- javascript - Object.keys.map 仅返回第 n 个值并排除其余值
- c# - MultipartFormDataContent 未在 HttpRequestBody 中添加 Content-Type
- c# - 为什么查询唯一行的 PK 为 0 的非空序列有时会抛出?
- html - 放大网站时如何阻止文字和图像拉伸
- c++ - Widevine 会话更新无限循环