我正在使用Python Twitter API进行一系列操作,所有这些操作都会在try / except块中捕获相同的错误。我想扩展Django的View对象包括TwitterView类中的错误,并让每个后续对象继承自TwitterView,根据请求的动作/ URL添加各自的get()方法。
示例twitter / views.py文件:
class TwitterView(View):
def dispath(self, request, *args, **kwargs):
'''
Params: <magic!>
'''
try:
network_data = super(TwitterView, self).dispatch(request, *args, **kwargs)
return render_response(request, network_data)
except TwitterOauthException, e:
twitter_account_has_bad_oauth.send(sender=network.id)
return return_error(request, e, e.status_code)
except TwitterApiException, e:
return return_error(request, e, e.status_code)
class TwitterFeed(TwitterView):
def get(self, request, *args, **kwargs):
network_id = self.kwargs.get('network_id',None)
self.network = get_network(request.user, network_id, read=True)
tl, actions = self.network.get_feed(since=self.kwargs.get('since',None), before=self.kwargs.get('before',None), page=self.kwargs.get('page',None), limit=self.kwargs.get('limit',None))
return render_response(request, tl, actions)
现在编写代码时,在TwitterView.dispatch的try / catch块中处理的错误是否扩展到TwitterFeed等对象的GET请求?