mixins.py
21 lines
| 594 B
| text/x-python
|
PythonLexer
neko259
|
r900 | PARAM_NEXT = 'next' | ||
neko259
|
r563 | PARAMETER_METHOD = 'method' | ||
class DispatcherMixin: | ||||
""" | ||||
This class contains a dispather method that can run a method specified by | ||||
'method' request parameter. | ||||
""" | ||||
neko259
|
r566 | def dispatch_method(self, *args, **kwargs): | ||
request = args[0] | ||||
method_name = None | ||||
neko259
|
r563 | if PARAMETER_METHOD in request.GET: | ||
method_name = request.GET[PARAMETER_METHOD] | ||||
neko259
|
r566 | elif PARAMETER_METHOD in request.POST: | ||
method_name = request.POST[PARAMETER_METHOD] | ||||
neko259
|
r563 | |||
neko259
|
r566 | if method_name: | ||
return getattr(self, method_name)(*args, **kwargs) | ||||