2014-04-24 3 views
0

js 캘린더에 이벤트 목록을 구현하려고합니다. 그래서 달력에 대한 데이터는 다음과 같이이다 :Django, 고유 한 템플릿 속성

이 경우
var studyEvents = { 
    '04-03-2014' : '<span class="event">Event 1</span>', 
    '05-08-2014' : '<span class="event">Event 2</span>', 
    '12-09-2014' : '<span class="event">Event 3</span>' 
}; 

(가) 이상의 이벤트가 같은 날있는 데이터는 다음과 같습니다

var studyEvents = { 
    '04-03-2014' : '<span class="event">Event 1</span>', 
    '05-08-2014' : '<span class="event">Event 2-1</span><span class="event">Event 2-2</span>', 
    '12-09-2014' : '<span class="event">Event 3</span>' 
}; 

을 그래서 내가 내가하는 일은 날짜순으로 정렬 된 모든 이벤트 목록입니다. 같은 날에 이벤트가 에 있는지 확인하고 싶습니다. 나는 event.date이 아니고이 아니면 같은 줄에 넣을 수있는 방법이있을 수 있으므로 체크 할 수 있다고 생각합니다.

var studyEvents = { 
    {% for event in events %} 
     '{{ event.date|date:"m-d-Y" }}' : '<span class="event">{{ event.title }}</span>'{% if not forloop.last %},{% endif %} 
    {% endfor %} 
}; 

이 나는이 하나를 잃은 비트하므로, 어떠한 도움이 많이 감상 할 수있어!

+1

당신은 date''에 내장 된 templatetag'regroup'을 사용하거나 대신보기에서 그룹화 할 수 있습니다. https://docs.djangoproject.com/en/dev/ref/templates/builtins/#regroup –

+0

이것이 정확한 접근 방법 인 것 같습니다! 나는 그것을 지금 검사 할 것이고 나는 당신에게 알릴 것이다! – manosim

+0

@SohanJain 그것은 나를 위해 일했다!! 그것은 내가 필요로하는 바로 그 것이었다! 자습서의 코드를 붙여 넣으면 답을 얻을 수 있습니다! 감사! – manosim

답변

1

날짜가 내장 된 templatetag regroup을 사용할 수 있습니다. https://docs.djangoproject.com/en/dev/ref/templates/builtins/#regroup

사용 예제 :

cities = [ 
    {'name': 'Mumbai', 'population': '19,000,000', 'country': 'India'}, 
    {'name': 'Calcutta', 'population': '15,000,000', 'country': 'India'}, 
    {'name': 'New York', 'population': '20,000,000', 'country': 'USA'}, 
    {'name': 'Chicago', 'population': '7,000,000', 'country': 'USA'}, 
    {'name': 'Tokyo', 'population': '33,000,000', 'country': 'Japan'}, 
] 

템플릿 :

{% regroup cities by country as country_list %} 

<ul> 
{% for country in country_list %} 
    <li>{{ country.grouper }} 
    <ul> 
     {% for item in country.list %} 
      <li>{{ item.name }}: {{ item.population }}</li> 
     {% endfor %} 
    </ul> 
    </li> 
{% endfor %} 
</ul> 
+0

위의 설명에서 말했듯이 이것은 내가 찾고 있던 것입니다! – manosim