Laravel 5有条件地触发模态

时间:2016-01-25 14:52:10

标签: laravel laravel-5

我想检查用户是否登录,如果是,则显示一些内容,否则我想点击网址或调用模式。

@if(Auth::check())
    .............if user registered display here
@else
   I want to click the link below automatically....OR Call a view
   <a class="signin_link" href="{{ action('Auth\AuthController@login') }}" rel="get:Loginform"><i class="fa fa-user" style="font-size:20px"></i></a>
@endif

2 个答案:

答案 0 :(得分:1)

这会将您的用户重定向到您想要的页面:

@if(Auth::check())
    .............if user registered display here
@else
   //Redirect user to the link
   <script>window.location = "{{ action('Auth\AuthController@login') }}";</script>
@endif

如果你使用bootstrap,这会打开你的模态:

@if(Auth::check())
    .............if user registered display here
@else
   //Opening a bootstrap modal
   <script>$('#myModal').modal('show')</script>
@endif

注意:我认为您的页面上已有模态html

答案 1 :(得分:0)

虽然可以在视图中执行此操作,但您不应该这样做。相反,请使用auth中间件(请参阅https://github.com/laravel/laravel/blob/master/app/Http/Middleware/Authenticate.php)。

以下是一个例子:

Route::group(['middleware' => 'auth'], function() {
    Route::get('/this/route/needs/a/logged/in/user', 'PageController@account');
});

如果没有用户登录,访问者将被重定向到登录页面(您可以在中间件中设置)。