guy*_*oni 9 laravel laravel-nova
我想从我的Laravel Nova应用程序中删除仪表板。
我发现很容易将其从侧边栏菜单中删除 - 只需注释/views/dashboard/navigation.blade.php代码即可。
但是,我想添加重定向逻辑(登陆页面取决于用户角色),因此当导航到/用户时将被重定向到与他相对应的资源或工具。
(我已经在登录后实现了重定向(/sf/answers/3804158641/)
我尝试用卡片来做到这一点,但看起来这不是正确的解决方案。
知道我可以在哪里放置重定向逻辑吗?
新星4号;您可以像这样重写initialPath:
class NovaServiceProvider extends NovaApplicationServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
parent::boot();
Nova::initialPath('/resources/users');
}
// ...
}
Run Code Online (Sandbox Code Playgroud)
这样,您Users在登录时就会被重定向到该资源。
小智 0
我自己刚刚弄清楚了这一点。在 Routes/web.php 文件中,添加重定向路由:
Route::redirect('/','/resources/{resource_name}');
Run Code Online (Sandbox Code Playgroud)
其中 {resource_name} 是资源的复数形式。例如,“/resources/posts”。
在您的情况下,您可能希望重定向到您自己的控制文件,可以在其中放置重定向逻辑。
Route::get('/', 'YourController@rootRedirectLogic');
Run Code Online (Sandbox Code Playgroud)
然后在控制器YourController中添加方法:
public function rootRedirectLogic(Request $request) {
// some logic here
return redirect()->route('YourRoute');
}
Run Code Online (Sandbox Code Playgroud)
其中“YourRoute”是您要将用户发送到的路线的名称。
(在 dillingham 的评论中找到了此解决方案的线索:https://github.com/laravel/nova-issues/issues/393)
| 归档时间: |
|
| 查看次数: |
7850 次 |
| 最近记录: |