我试图通过路线建立从 index.blade.php 到 login.blade.php 的超链接。我为这个超链接定义了一个命名路由,但是没有工作。
这是我的路线代码。
Route::get('/','HomeController@index');
Route::get('/login', 'HomeController@login_page')->name('login');
这是我的控制器。
public function login_page()
{
return view('login');
}
这是我的观点,我试图设置一个超链接。
<li><a href="{{route('login')}}">Log-in</a></li>
答案 0 :(得分:2)
使用Laravle刀片模板在菜单链接中设置网址链接,使用{{url(&#39; dashboard&#39;)}}。在例如:
中使用此链接<ul>
<li>
<a href="{{url('dashboard')}}" class="active">Dashboard</a>
</li>
</ul>
我认为这会对你有所帮助。
答案 1 :(得分:1)
您的错误消息指向服务器问题,而不是Laravel。
确保您mod_rewrite for apache is installed and enabled.
a2enmod rewrite
service apache2 restart
然后检查您的Laravel:
在您的控制台中,运行:php artisan route:list
并查看您是否有类似于
| Domain | Method | URI | Name | Action | Middleware |
+--------+----------+------------+---------------+---------------------------------------------------+-----------------------------+
| | GET|HEAD | login | login | App\Http\Controllers\HomeController@login_page | web,guest |
如果您没有看到login
部分,请尝试使用以下方式清除路由缓存:
php artisan route:clear
除此之外,你正在做所有事情。
答案 2 :(得分:0)
我遇到了同样的问题(Ubuntu 18.04),它似乎不是Laravel,而是Apache。
解决方法:安装Xampp并将其用作Localhost。