2012-02-04 1 views
0

이것은 지금 어떻게하고 있습니다.DateField를 사용하지 않고 실시간으로 현재 연도로 기본 연도를 설정하십시오.

class Season(models.Model): 
    Name = models.CharField(max_length=20) 
    Year = models.CharField(max_length=6) 
    start_date = models.DateField() 
    end_date = models.DateField() 
    league = models.ManyToManyField(League) 
    def __init__(self): 
     """ 
     Setting default year current year 
     """ 
     today = datetime.date.today() 
     today = today.timetuple() 
     defaultyear = today[0] 
     defaultyear = str(defaultyear) 
     self.Year = defaultyear 
     return self.Year 

내가 바로 초기화을 사용하고 있습니다 ... 아니면 내가 뭔가를 놓친 거지? 또는 '초기화'뭔가 'setyear'로 변경해야합니다 .. 만약 그렇다면 .. 어떻게 내 장고 관리자에서 호출합니까?

// 마우스

답변

1

는 또한 호출 될 수있는 양식 필드의 default 매개 변수를 사용할 수 있습니다. 어떤 경우에는 당신이 __init__setyear에 이름을 바꿀 수 있습니다 (그리고 클래스의 외부 이동) https://docs.djangoproject.com/en/dev/ref/models/fields/#default

참조 및 Year = models.CharField(max_length=6, default=setyear)

+0

멋진 .. 감사와 함께 필드를 정의 – debuggerpk

관련 문제