Есто класс:
class TimeMonth:
def getstrdate(self, monthyear):
'''
функция возвращает строковое представление месяца и года для подстановки значения по умолчанию в моделях
monthyear - строка месяц или год. В зависимости от этого возвращается либо текущий месяц либо текущий год
'''
monthyeararray = {
1: 'Январь',
12: 'Декабрь'
}
now_date = date.today() # Текущая дата (без времени)
cur_year = now_date.year # Год текущий
cur_month = now_date.month # Месяц текущий
if monthyear == 'месяц':
defdate = monthyeararray[cur_month]
else:
defdate = str(cur_year)
return defdate
при вызове из другой модели:
month = models.CharField(
default=TimeMonth.getstrdate('месяц'),
)
выдает ошибку:
TypeError: getstrdate() missing 1 required positional argument: 'monthyear'
то есть нужны 2 аргумента - self и monthyear.
если я убираю self, то flake8 ругается, что методы обязательно должны иметь первым аргументом self, но ошибки при выполнении не выдает.
Как правильно писать код в данном случае?
P.S. Я новичек в Django