在Django的1.4.2,我用一個簡單的分頁代碼像given in official documentation:「經理」的對象是Django的分頁unsubscriptable錯誤
...
paginator = Paginator(songs, 25) # Show 25 songs per page
page = request.GET.get('page')
try:
songs = paginator.page(page)
except PageNotAnInteger:
# If page is not an integer, deliver first page.
songs = paginator.page(1)
except EmptyPage:
# If page is out of range (e.g. 9999), deliver last page of results.
songs = paginator.page(paginator.num_pages)
...
當我運行這個觀點,我得到「‘經理’對象是不可替代的「songs = paginator.page(1)
行錯誤。我搜索錯誤,但我找不到任何解決方案。問題是什麼?
編輯:
songs
是Django的模型對象名單。全視圖代碼是這樣的:
def index(request):
songs = Song.objects
#filter params
q_name = request.GET.get('name', None)
if q_name:
songs = songs.filter(name__contains=q_name)
q_composer = request.GET.get('composer', None)
if q_composer:
songs = songs.filter(composer__name__contains=q_composer)
q_composer_id = request.GET.get('composer_id', '')
if q_composer_id != '':
songs = songs.filter(composer__id=q_composer_id)
paginator = Paginator(songs, 25) # Show 25 contacts per page
page = request.GET.get('page')
try:
songs = paginator.page(page)
except PageNotAnInteger:
# If page is not an integer, deliver first page.
songs = paginator.page(1)
except EmptyPage:
# If page is out of range (e.g. 9999), deliver last page of results.
songs = paginator.page(paginator.num_pages)
return render(request, 'index.html', {'songs': songs})
什麼是歌曲? –
我覺得我的編輯更清晰。 –