diff --git a/superset/views/core.py b/superset/views/core.py index c8101b8a8fc49..5b0ee5f3bc104 100755 --- a/superset/views/core.py +++ b/superset/views/core.py @@ -842,6 +842,15 @@ def request_access(self): .one() ) datasources.add(datasource) + + has_access = all( + ( + datasource and self.datasource_access(datasource) + for datasource in datasources + )) + if has_access: + return redirect('/superset/dashboard/{}'.format(dashboard_id)) + if request.args.get('action') == 'go': for datasource in datasources: access_request = DAR(