Size: a a a

Django [ru] #STAY HOME

2020 April 23

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Типа на уровне ORM как-то заалиасить и сказать что StupidModel.objects.filter(year, month AS some_date(01.month.year) и по этой some_date уже делать выборку?) (написал очень тупо, просто чтобы примерно описать ситуацию
источник

S

Stanley in Django [ru] #STAY HOME
Ярослав Коробейников
Я бы с сделал это на уровне базы без проблем, но мне в контексте Django ORM это нужно сделать
создай представление в БД в котором сделай вычесляемое поле ДАТА из года и месяца с помощью функций SQL. Сделай в джанго inspectdb этого представления и пиши запросы
источник

R

RAEman in Django [ru] #STAY HOME
я сильно подозреваю что как-то в модельке тоже можно прописать функцию которая принимает эти значения
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
В Django при запросах есть Extract, наоборт, извлекающий опредёлённый атрибут из даты (год, месяц, день) такого аналога для склеивания нет? xDDD
источник

DT

Dan Tyan in Django [ru] #STAY HOME
RAEman
я сильно подозреваю что как-то в модельке тоже можно прописать функцию которая принимает эти значения
вопрос не в функции модели а как собрать sql запрос
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Dan Tyan
вопрос не в функции модели а как собрать sql запрос
👍
источник

DT

Dan Tyan in Django [ru] #STAY HOME
пока вертится анотация, конкат и outpur_field
источник

R

RAEman in Django [ru] #STAY HOME
источник

DT

Dan Tyan in Django [ru] #STAY HOME
нет
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Я начинаю смотреть в сторону этого
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Ну вот где-то почти, date_field выводит, !но пока строкой!, и поскольку месяц интом может быть 1,2,3 то вставляется он пока без 0 спереди ('2018-4-01')
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Dan Tyan
пока вертится анотация, конкат и outpur_field
Ай спасибо ++++++++++
источник

DT

Dan Tyan in Django [ru] #STAY HOME
здорово что получилось
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Выглядит конечно ужасно и тупо...... Но как-то выкручиваться приходится(
источник

DT

Dan Tyan in Django [ru] #STAY HOME
вариант добавить поля с нормальной датой не рассматривался?
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Dan Tyan
вариант добавить поля с нормальной датой не рассматривался?
Видимо тот кто это сотворил не рассматривал, а сейчас я уже несколько раз об этом думал когда сталкивался с проблемами с выборкой.
Как вариант у меня крутится мысль накатить миграцию которая бы добавила каждой записи поле с типа Date и хай они по первой нулом будут, а потом SQL запросом всем записям записать date_field основываясь на их month и year (а день всегда 01, ибо он не важен (почти))
источник

DT

Dan Tyan in Django [ru] #STAY HOME
ну да, добавить поле заполнить текущими значениями написать логику его заполнения при добавлении
источник

DT

Dan Tyan in Django [ru] #STAY HOME
и использовать в запросах
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Но сейчас такой период переписка вот этого вот легаси, и там часть старых приложений крутиться, и всё не то чтобы очень, но слегка запутанно, и хотелось бы переписать так чтобы старые сервисы не отвалились, когда "полностью"  допишешь этот
источник

DT

Dan Tyan in Django [ru] #STAY HOME
так ты от старой логики не отказывайся
источник