【问题标题】:href link is not working in laravelhref链接在laravel中不起作用
【发布时间】:2018-04-04 11:49:00
【问题描述】:

我正在尝试通过路由构建从 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>

【问题讨论】:

  • 它不起作用怎么办?
  • 我倾向于使用url,{{ url('/login') }}
  • 登录页面未加载。
  • 会报错吗? URL 看起来正确吗? “不工作”是最广泛的问题,比如去看医生并说“有些疼”,但没有指出是手指、脚趾还是喉咙。
  • 把return view('login');换成return "test login !!";看看会不会命中方法!

标签: php laravel-5


【解决方案1】:

使用 Laravel 刀片模板在菜单链接中设置 URL 链接,使用它 {{url('dashboard')}}。在示例中使用此链接:

<ul>
  <li>
    <a href="{{url('dashboard')}}" class="active">Dashboard</a>
  </li>
</ul>

我认为这对你会有帮助。

【讨论】:

    【解决方案2】:

    您的错误消息指向服务器问题,而不是 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
    

    除此之外,你做的一切都正常。

    【讨论】:

      【解决方案3】:

      我有同样的问题(Ubuntu 18.04),它似乎不是 Laravel 而是 Apache。

      解决方法:安装 Xampp 并将其用作 Localhost。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-10
        • 1970-01-01
        • 2011-07-08
        • 1970-01-01
        • 2020-05-09
        相关资源
        最近更新 更多