带有自定义模型绑定的路线不工作
我正在尝试在文件模型中获取我的路由“弦”:
route('public-file', ['file' => $this]);
有更多上下文:
public function getPublicUrl(): ?string
{
if ($this->isNotPublic()) {
return null;
}
return route('public-file', ['file' => $this]);
}
我的路线:
Route::get('/public/files/{file:public_access_token}', \App\Http\Controllers\PublicFileController::class)->name('public-file');
我期望的是:我尝试的
http://myhost.com/public/files/<token>
错误:
Missing required parameter for [Route: public-file] [URI: public/files/{file}] [Missing parameter: file].
我尝试过的是:
route('public-file'('public-file' ,['file'=&gt; $ this])
路由('public-file',$ this)
路由('public-file',$ this-&gt; public_access_token)
成功生成的路由是:
route('public-file', $this->id);
但是该路由显然无效,因为它正在等待public_access_token而不是ID。
有什么想法吗? thx!
PS:在Laravel 9.17,php8.1上运行的应用程序
I am trying to get the my route "stringified" within my File model:
route('public-file', ['file' => $this]);
With more context:
public function getPublicUrl(): ?string
{
if ($this->isNotPublic()) {
return null;
}
return route('public-file', ['file' => $this]);
}
My route:
Route::get('/public/files/{file:public_access_token}', \App\Http\Controllers\PublicFileController::class)->name('public-file');
What I am expecting:
http://myhost.com/public/files/<token>
The error I am getting:
Missing required parameter for [Route: public-file] [URI: public/files/{file}] [Missing parameter: file].
What I've tried:
route('public-file', ['file' => $this])
route('public-file', $this)
route('public-file', $this->public_access_token)
A route is successfully generated with:
route('public-file', $this->id);
But the route is obviously invalid, as it's waiting for a public_access_token and not an ID.
Any idea ? ???? Thx !
ps: App running on Laravel 9.17, PHP8.1
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论