导航标签不带';t在路由配置文件/{name}Laravel上工作

导航标签不带';t在路由配置文件/{name}Laravel上工作,laravel,Laravel,我用类似于/profile/{name}的东西在Laravel中创建了一个个人资料页面,我使用UserController@showProfile: public function showProfile($name) { if(!Cache::has($name)) { if(DB::table('users')->where('name', $name)->exists()) { $user = DB::ta

我用类似于/profile/{name}的东西在Laravel中创建了一个个人资料页面,我使用UserController@showProfile:

public function showProfile($name)
{
    if(!Cache::has($name))
    {
        if(DB::table('users')->where('name', $name)->exists())
        {
            $user = DB::table('users')->where('name', $name)->get();
            Cache::put($name, $user, 10);
        }
        else
        {
            return view ('error404');
        }
    }

    return view ('user.profile', ['profile_stats' => Cache::get($name)]);
}
但是,如果我把/profile/{name}放在路由中,导航选项卡就不起作用,如果我让它只是/profile,一切都会起作用

这是profile.blade.php,带有导航选项卡:这是布局


路由::get('profile/{name}','UserController@showProfile');

能否向我们展示内容视图脚本:user.profile.blade.php

在确保一切正常之前不要使用缓存

public function showProfile($name)
{
    $user = DB::table('users')->where('name', $name)->get();

    return view ('user.profile', ['profile_stats' => $user]);
}

upd

  • 浏览器控制台中有js错误吗
  • 当url以
    /profile/
    结尾时,导航工作?也许你应该试试
    /profile/{name}/

  • 所以修复js错误。。。然后返回:)看起来您的哈希导航问题不是laravel问题。

    我解决了,问题是:

    <script type="text/javascript">
            window.jQuery || document.write("<script src='js/jquery.js'>"+"<"+"/script>");
        </script>
    
    
    window.jQuery | | document.write(“+”);
    
    我忘了把/放在js/jquery.js前面:

    <script type="text/javascript">
            window.jQuery || document.write("<script src='/js/jquery.js'>"+"<"+"/script>");
        </script>
    
    
    window.jQuery | | document.write(“+”);
    

    不过,谢谢你的回答

    你能给我们提供你的刀片文件吗?你期望结果如何?因为这还不清楚。请编辑您的问题并添加该信息!你能给我们提供路线吗?我编辑过。我只想导航标签工作,其他的都可以。如果我输入一个默认的$name值,例如$name='Victor',并从路由中删除{name}标记,则显示该配置文件,但导航选项卡不起作用,我无法在它们之间切换。