2017-05-04 1 views
-1

없이 모델에 액세스 할 수 있습니다 :I 모델 달력을 related_name

: 나는 통해 캘린더에 대한 액세스를 얻을 수 있기 때문에 여기에
class Base(models.Model): 
    calendar = models.ForeignKey(Calendar, related_name='base') 
    code = models.CharField(_('Code'), max_length=2, default='DE') 
    default = models.BooleanField(default=False) 

아무 문제 없습니다 :

여기
class Calendar(models.Model): 
    name = models.CharField(_('Name'), max_length=50) 
    active = models.BooleanField(default=True) 

은 related_name와 모델입니다

base_ids = self.calendar.base.values_list('id', flat=True) 

하지만 related_name이없는 다른 모델이 있습니다.

class Post(models.Model): 
    calendar = models.ForeignKey(Calendar) 
    pub_date = models.DateTimeField(blank=True, null=True) 

나는 시도했다 :

post_id = self.calendar_set.themes.values_list('id', flat=True) 

하지만 어떤 작업 없습니다.

+0

related_name을 추가하지 않은 이유가 무엇입니까? –

+0

위의 두 예제에서 'self'모델이 명확하지 않습니다. 테마 란 무엇입니까? – Alasdair

+0

self.calendar = Calendar @Alasdair – Mark

답변

0

모델에 액세스하기 위해 related_name을 추가해야하는 경우는이 아니며 이 아닙니다. (당신이 이제까지 번만을 쓰고 싶다면은 충돌이있을 때입니다.) 여기의 기본값은 post_set입니다. 이것은 정상적으로 작동합니다.

+0

감사합니다. @ daniel-roseman – Mark

관련 문제