def __call__(self):
searchers = []
for param_name, param in self.params.items():
if hasattr(PackagesSearchParams, param_name):
param_method = getattr(PackagesSearchParams, param_name)
if (not hasattr(param_method, '_no_param') and
(len(param) == 0 or param[0] == '')):
raise HTTPBadRequest(
detail=Messages.no_values % param_name)
if hasattr(param_method, '_only_one'):
if len(param) > 1:
raise HTTPBadRequest(
detail=Messages.too_many_values % (1, len(param),))
else:
param = param[0]
search = param_method(param)
searchers.append(search)
else:
raise HTTPBadRequest(
detail=Messages.bad_search_param % param_name)
self.searchers = searchers
return searchers
评论列表
文章目录