[英]Laravel 8 - Detail url is not correctly mapped
我正在使用laravel 8
并在apache/ubuntu 20
服务器上运行它
我的路线如下所示:
web.php
Route::get('/', 'IndexController@index');
Route::get('/company/{symbol}', 'CompanyController@index');
在我的.env
文件中, APP_URL
如下所示:
APP_URL=http://localhost/laravel_app/public
我可以通过以下方式到达我的基地 url /
:
http://localhost/laravel_app/public/
当我 go 从/
到另一个细节 url f.ex. /company/AAPL
,我得到:
在我的基本 ( /
) url 的刀片文件index.blade.php
文件中,单击链接的代码如下所示:
@foreach ($company as $i)
<tr>
<th scope="row"><a href="/company/{{$i->symbol}}">{{$i->name}} ({{$i->symbol}})</a></th>
<td>{{$i->date}}</td>
...
</tr>
@endforeach
为什么 Route /company/{symbol}
未正确映射?
有什么建议我做错了吗?
感谢您的回复!
使用 function url 它将创建有效的 url
url("/company/{{$i->symbol}}")
路线 function 非常有助于 url 创建给出路线名称
Route::get('/company/{symbol}', 'CompanyController@index')->name('company.page');
何时需要打印 url
route('company.page', ['symbol' => $i->symbol])
它将返回有效的 url
当您将 / 放在路径的开头时,它将 go 到您项目位置的根目录 | 领域。 您必须将其设置为:
href="company/{{$i->symbol}}"
或使用url
助手
url('company' . $i->symbol)
但更好的方法是将路线命名为:
// add name to your route
Route::get('/company/{symbol}', 'CompanyController@index')->name('company.index');
// call the route helper to return the url
route('company.index', ['symbol' => $i->symbol]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.