👻

[laravel-admin] Grid columnにリンクをつける

2021/03/31に公開
$grid->column('articles.author', __('Author'))
    ->display(function ($row) {
        return $row->author->name;
    })
    ->link(function ($row) {
        return route('profiles.show', $row->author->id);
    }, '');
  • link() にClosureが渡せる
  • display() でHTMLを組み立てて注入するサンプルが多いけど、テキストとリンクを分離した方が柔軟に思える
  • link() 第二引数は aタグのtarget指定でデフォルトは _blank になってる。
  • この記法でもexport結果はaタグ付きの値になってしまうので、$export->originalValue(['articles.author']); の設定も書いておく

Discussion