Simplify RequestParameters

Simplifies request parameters, it defined a bit more than it had too,
added some docstrings and made the code simpler as well. Should now
raise a KeyError on __getitem__ as @amsb had noted on commit 9dd954b
This commit is contained in:
Eli Uriegas 2017-01-20 14:31:24 -06:00
parent bef34d66f5
commit a7cd4ccd09

View File

@ -21,19 +21,13 @@ class RequestParameters(dict):
value of the list and getlist returns the whole shebang value of the list and getlist returns the whole shebang
""" """
def __init__(self, *args, **kwargs):
self.super = super()
self.super.__init__(*args, **kwargs)
def __getitem__(self, name):
return self.get(name)
def get(self, name, default=None): def get(self, name, default=None):
values = self.super.get(name) """Return the first value, either the default or actual"""
return values[0] if values else default return super().get(name, [default])[0]
def getlist(self, name, default=None): def getlist(self, name, default=None):
return self.super.get(name, default) """Return the entire list"""
return super().get(name, default)
class Request(dict): class Request(dict):