2015-04-16 90 views
1

我試圖讓日曆here工作渲染HTMLCalendar - 但我不能得到任何東西還給其他的是None在Django

作爲新的Django我很可能被做低級的錯誤我的index.html文件。我有我的觀點如下(其連接在真正的鏈接的示例代碼完全相同的副本)

... 
55  my_next_month = my_month + 1 
56  if my_next_month == 13: 
57   my_next_year = my_year + 1 
58   my_next_month = 1 
59  my_year_after_this = my_year + 1 
60  my_year_before_this = my_year - 1 
61  return render(request, 'homepage/index.html', {'events_list': my_events, 
62               'month': my_month, 
63               'month_name': named_month(my_month), 
64               'year': my_year, 
65               'previous_month': my_previous_month, 
66               'previous_month_name': named_month(my_previous_month), 
67               'previous_year': my_previous_year, 
68               'next_month': my_next_month, 
69               'next_month_name': named_month(my_next_month), 
70               'next_year': my_next_year, 
71               'year_before_this': my_year_before_this, 
72               'year_after_this': my_year_after_this 
73  }) 
74 
75 
76 def index(request): 
77   users = User.objects.all() 
78   return render(request, 'homepage/index.html', {'users':users}) 

可我甚至有2 return render「在我的意見文件?我想在頁面上呈現兩個對象(日曆和簡單的用戶列表)。用戶工作正常。

在我的urls.py文件我有:

4 urlpatterns = patterns('', 
    5     url(r'^$', views.index), 
    6     url(r'^$', views.calendar, name='calendar') 
    7    ) 

任何想法?

非常感謝,亞瑟

編輯:這是我的模板代碼。僅供參考 - 變量都工作得很好,但如果你想他們是在同一頁上的日曆返回None

1 {% load staticfiles %} 
    2 
    3 <!--The first few lines here pull in the dropdown banner--!> 
    4 <title>Dashboard</title> 
    5 <link rel="stylesheet" type="text/css" href="{% static 'css/banner.css' %}" /> 
    6 <script type="text/javascript" src="{% static 'javascript/banner.js' %}"></script> 
    7 <script src="{% static 'javascript/jquery.js' %}"></script> 
    8   <script> 
    9   $(function(){ 
10     $("#includedContent").load("{% static 'html/banner.html' %}"); 
11     }); 
12   </script> 
13 
14   <div id="includedContent"></div> 
15   <!--End of dropdown barrier--!> 
16   <br> 
17   <br> 
18 
19 {% if users %} 
20   {% for user in users %} 
21   <span>{{ user.first_name }} {{ user.last_name }}</span><br> 
22   {% endfor %} 
23 {% else %} 
24   <b>no users</b> 
25 {% endif %} 
26 
27 {% load event_tags %} 
28 
29 <div id="calendar"> 
30    {% event_calendar year month event_list %} 
31  </div> 
32 
33  {% event_calendar year month event_list %} 
34  <br> 
35  {% for x in users %} 
36  {{ x }} 
37  {% endfor %} 
38  <br> 
39  {{ year }} 
40  {{ month }} 
41  <br> 
42  {{ events_list }} 
+0

你可以在你的視圖文件中有許多'return render's ...每個視圖函數一個。你不能有相同的url模式指向兩個不同的視圖函數,但只有其中一個會工作 – Anentropic

+0

你的'index.html'模板是什麼樣的? – Anentropic

+0

@Antropic感謝您的回覆 - 我會將它附加到原始文章 –

回答

0

,並直接在頁面上呈現的,而不是通過用JavaScript你有一些Ajax調用在相同的視圖中返回它們。

def index(request): 
     users = User.objects.all() 
     # Code for retrieving your events etc. 
     return render(request, 'homepage/index.html', {'users':users, 'events_list':my_events, .....}) 

目前,當你訪問你的基地址,url中pattenrs第一場比賽將是您收到一個,這就是爲什麼用戶的工作,而不是日曆。

您可以修改您的網址

urlpatterns = patterns('', 
       url(r'^$', views.index), 
       url(r'^calendar/$', views.calendar, name='calendar') 
       ) 

,並訪問您baseurl.com/calendar/,看看它是否工作。你不能有兩個具有相同模式的網站,壽。

+0

謝謝 - 我通過調用index()函數內的calendar()函數獲取要顯示在index.html頁面上的數據。現在,如果只有我可以讓日曆渲染,我會笑! –