Merge pull request #85 from PengfeiLi0218/master

Throw 500 error, when grant some roles to some users #83
This commit is contained in:
Simon Redfern 2019-02-27 15:03:21 +01:00 committed by GitHub
commit dd6d54ee45
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 27 additions and 21 deletions

View File

@ -133,8 +133,8 @@ class DetailView(LoginRequiredMixin, FormView):
except APIError as err:
messages.error(self.request, err)
return super(DetailView, self).form_invalid(form)
except:
messages.error(self.request, "Unknown")
except Exception as err:
messages.error(self.request, "{}".format(err))
return super(DetailView, self).form_invalid(form)
msg = 'calls limit of consumer {} has been updated successfully.'.format(
@ -152,22 +152,25 @@ class DetailView(LoginRequiredMixin, FormView):
consumer['created'] = datetime.strptime(
consumer['created'], settings.API_DATETIMEFORMAT)
call_limits_urlpath = '/management/consumers/{}/consumer/calls_limit'.format(self.kwargs['consumer_id'])
call_limits_urlpath = '/management/consumers/{}/consumer/call-limits'.format(self.kwargs['consumer_id'])
consumer_call_limtis = api.get(call_limits_urlpath)
consumer['per_minute_call_limit'] = consumer_call_limtis['per_minute_call_limit']
consumer['per_hour_call_limit'] = consumer_call_limtis['per_hour_call_limit']
consumer['per_day_call_limit'] = consumer_call_limtis['per_day_call_limit']
consumer['per_week_call_limit'] = consumer_call_limtis['per_week_call_limit']
consumer['per_month_call_limit'] = consumer_call_limtis['per_month_call_limit']
if 'code' in consumer_call_limtis and consumer_call_limtis['code'] > 400:
messages.error(self.request, "{}".format(consumer_call_limtis['message']))
else:
consumer['per_minute_call_limit'] = consumer_call_limtis['per_minute_call_limit']
consumer['per_hour_call_limit'] = consumer_call_limtis['per_hour_call_limit']
consumer['per_day_call_limit'] = consumer_call_limtis['per_day_call_limit']
consumer['per_week_call_limit'] = consumer_call_limtis['per_week_call_limit']
consumer['per_month_call_limit'] = consumer_call_limtis['per_month_call_limit']
except APIError as err:
messages.error(self.request, err)
except:
messages.error(self.request, "Unknown")
context.update({
'consumer': consumer
})
except Exception as err:
messages.error(self.request, "{}".format(err))
finally:
context.update({
'consumer': consumer
})
return context

View File

@ -39,7 +39,7 @@ class DirectLoginAuthenticator(Authenticator):
result = response.json()
if response.status_code != 201:
raise AuthenticatorError(result['error'])
raise AuthenticatorError(result['message'])
else:
self.token = result['token']

View File

@ -151,12 +151,15 @@ class DetailView(LoginRequiredMixin, FormView):
except:
messages.error(self.request, 'Unknown Error')
return super(DetailView, self).form_invalid(form)
msg = 'Entitlement with role {} has been added.'.format(
entitlement['role_name'])
messages.success(self.request, msg)
self.success_url = self.request.path
return super(DetailView, self).form_valid(form)
if 'code' in entitlement and entitlement['code']>=400:
messages.error(self.request, entitlement['message'])
return super(DetailView, self).form_invalid(form)
else:
msg = 'Entitlement with role {} has been added.'.format(
entitlement['role_name'])
messages.success(self.request, msg)
self.success_url = self.request.path
return super(DetailView, self).form_valid(form)
def get_context_data(self, **kwargs):
context = super(DetailView, self).get_context_data(**kwargs)