2015-01-28 4 views
0

나는 3 개 모델 등이 있습니다양식 필드를 사용하여 반복 작업을 반복 할 수 있습니까?

class Opening(models.Model): 
... 
class OpeningDays(models.Model): 
     opening = models.OneToOneField(Opening, related_name="days") 
... 
class OpeningHours(models.Model): 
     opening = models.OneToOneField(Opening, related_name="hours") 
... 

을 한 후 나는 예를 들어이 이전 모델에 따라 여러 모델을 만들 :

class StoreOpening(Opening): 
... 

그리고 에디션의 형태를하는 주형있을 때 내 문제입니다. 난 이미 전체 데이터에 대한 formsets를 생성하지만이 같은 데이터를 반복 할 :

{% for opening in store_opening %} 
     {% opening %} 
     {{ store_opening_days[forloop.counter]}} 
     {{ store_opening_hours[forloop.counter]}} 
{% endfor %} 

하지만이 ... 일을 이렇게하는 가장 좋은 방법에 어떤 아이디어를 가지고하지 않는 것?

+0

그 사용자 지정 서식 필터를 만드는 ...하지만 정말 접근 방식이 잘못 생각없이, 당신을 모델 사이에 외래 키 관계가 있어야하며 루프의 현재 'opening' 객체에서 적절한 OpeningHours 객체를 직접 가져올 수 있어야합니다. – Anentropic

+0

@Anentropic 나는 모델 간의 관계를 가지고 질문을 편집했다. 정보가보기로 전송됩니까? 'opening.days'와 같은 형식일까요? – MetalWeirdo

+0

템플릿 루프의'opening'이'Opening' 오브젝트이고 yes 인 경우 – Anentropic

답변

0

글쎄, 나는 인터넷에 깊이 들어가서 같은 사람과 고투하고있는이 사람을 발견했다. 그는 우리 모두를 도울 뭔가를 만들었다.

Nested Formset

화이트 내가이 일을 할 수있어이 :

StoreOpening = nestedformset_factory(StoreData,StoreOpening,nested_formset=nestedformset_factory(StoreOpening,OpeningDays,nested_formset=inlineformset_factory(StoreOpening, OpeningHours,extra = 0, can_delete=False), extra = 0, can_delete=False),extra = 0, can_delete=False) 
당신이 할 수없는
관련 문제