マイdjango
アプリのindex.html
ページには、この方法はレンダリング現在month.Theのすべての日のイベントを含む配列をダンプするsimplejson
を使用していますindex()
と呼ばれるDjangoのビューによって移入jqueryのfullcalendarを、使用していますindex.html
テンプレート。間違ったHTMLテンプレート
私は別のDjangoのビューを呼び出すカレンダーのprev button
のクリックでajax get
コールがprev_month()
.This方法は、前の月のイベント配列を計算し、それをダンプし、最終的に'prev_month.html'
def prev_month(request,year,month):
....
prev_events=[]
#populates array by making db calls
return render_to_response('prev_month.html',{'prev_events':prev_events})
別のテンプレートをレンダリング作っていますprev_month.html
...
<script>
$(document).ready(function() {
$('#calendar').fullCalendar({
events: {{prev_events|safe}}
});
$('.fc-button-prev').click(function(){
var d=$('#calendar').fullCalendar('getDate');
var month=d.getMonth()+1;
var year=d.getFullYear();
$.ajax({url:'/myapp/prev_month/'+year+'/'+month,type:"GET",
success:function(){
alert('prev_month.html::success');
},
});
});
</script>
テンプレートindex.html
は成功する以外は、上記のものと同様である警告が表示'index.html::success'
。index()
というdjangoビューが渡されたので、current_events
を使用してカレンダーにも値を設定します。
Djangoのビューは、
def index(request):
...
#creates events array and jsondump
return render_to_response('index.html',{'current_events':events_array})
私はインデックスページに移動し、カレンダーが前のボタンがクリックされる.When現在の月のすべてのイベントを示しているDjangoのビューprev_month()のため.Butを実行します何らかの理由で、レンダリングされたテンプレートはindex.html
代わりのprev_month.html
.ThisではOためindex.html::success
代わりのprev_month.html::success
を示しており、成功の警告から明らかですこの前のイベントは表示されません。
なぜこのようなことが起こるのか理解できる人はいますか?
prev_month()はDjango内でprev_month.htmlをレンダリングします。問題は、AJAXリクエストを開始した後でローカルページテンプレート(index.html)を更新しないことです。 – cfedermann
インデックスページの正確なHTML出力(使用しているJavaScriptを含む)を投稿できますか?これは問題を解決するのに役立ちます:) – cfedermann
ここにインデックスページのhtml出力です。 http://pastebin.com/vnsC5qP2 – damon