Простите, но не знаю по каким ключевикам искать.
Скажем, есть код получения данных из бд и их сортировки(схематично):
if sort_by == "date" : sort_by = Articles.created.desc()
Articles.select().order_by(sort_by).offset(offset).limit(limit)
Либо:
if sort_by == "created" : sort_by = Articles.created.desc()
Articles.select().order_by(sort_by).offset(offset).limit(limit)
Этих самых значений "sort_by" очень много и получается довольно длинный список. Добавим это к тому, что в приложении полно разделов и много моделей, которые работают по одному сценарию: запрос -> получить параметры сортировки -> получить данные из модели. Для каждого раздела один и тот же код, можно сказать. Ужасно.
Так вот, еще раз попрошу прощения, как объединить весь этот код в одну функцию типа:
sort_by - string
def get_all_data(Model, sort_by, offset, limit):
try:
sort_by = Model.%SORT_BY%.desc()
return Model.select().order_by(sort_by).offset(offset).limit(limit)
except:
raise Exception("xxx")
Это, возможно, базовые основы. Правда и я не программист, но вышло так, что пришлось столкнуться с данной сферой. Был небольшой опыт в JS.