ajax datatable laravel链接

问题描述 投票:1回答:1

我有一个使用yajrabox包的数据表,其中包含各种字符串的链接。当我点击一个链接时,它会带我到一个带有“/ teams /”字符串的404页面。我如何使这个字符串成为一个可查看的页面?我尝试过使用一个slug,但我可能会错误地使用它并且老实说我不知道我的错误在哪里。这是我的代码的部分内容:

路线:

Route::get('/teams/display/{$slug}', 'TeamsController@display');

TeamsController:

public function display($slug)
{
    $teamdatas = LoserData::findBySlugOrFail($slug);



    return view('teams/display', compact('teamdatas'));

}

DataTable.blade

      {data: 'homeTeam', name: 'homeTeam', "fnCreatedCell": function (nTd, sData, oData, iRow, iCol) {
        $(nTd).html("<a href=/teams/display/"+oData.homeTeam+">"+oData.homeTeam+"</a>");
        }},

团队/ display.blade.php

<div class="container">
<div class="row">
    <div class="col-sm-8">
        <h1> Welcome the {{$teamdatas->slug}} profile page</h1>



    </div>
</div>

ajax laravel datatable routes slugify
1个回答
0
投票

我想我应该检查路由文档,因为它肯定是一个路由问题。要解决它,请将其放入您的路线中:

Route::get('/teams/display/{teamdatas?}', 'TeamsController@display', function ($teamdatas = 'Oilers-84') {

return $teamdatas;

});

以下是Laravel Docs 5.5中的信息:

可选参数有时,您可能需要指定路由参数,但可以选择存在该路由参数。您可以通过放置一个?在参数名称后面标记。确保为路由的相应变量赋予默认值:

Route::get('user/{name?}', function ($name = null) {
    return $name;
});

Route::get('user/{name?}', function ($name = 'John') {
    return $name;
});
© www.soinside.com 2019 - 2024. All rights reserved.