سلام
انجام تسک این جلسه : چک کردن رنج در سرچ
و and کردن خصوصیات در search به جای or کردنشان
البته بنظرم راه بهینهتری هم برای اینکار وجود داره
def search(self, **kwargs):
results = list()
objects = self._class.objects_list
for key, value in kwargs.items():
if key.endswith('__min'):
key = key[:-5]
compare_key = 'min'
elif key.endswith('__max'):
key = key[:-5]
compare_key = 'max'
else:
compare_key = 'equal'
if results:
objects.clear()
for obj in results:
objects.append(obj)
results.clear()
for obj in objects:
if hasattr(obj, key):
if compare_key == 'min':
result = getattr(obj, key) >= value
elif compare_key == 'max':
result = getattr(obj, key) <= value
else:
result = getattr(obj, key) == value
if result:
results.append(obj)
return results