[問題] Django admin的問題

作者: kanako (我是香民)   2014-08-29 09:26:56
我正在用Django admin製作一個編輯資料庫內容的介面
目前已有一個能使用的介面,想要進一步改進
我的問題是我放的儲存並前進至下一筆按鈕只能在全部資料中前進一筆
不能在先以filter篩過的資料群中前進一筆
簡化的實例如下
id name  gender
1 甲    男
2 乙    女
3 丙    男
4 丁    女
5 戊    男
admin.py 節錄如下
class StudentListFilter1(admin.SimpleListFilter):
title = _(u'性別')
parameter_name = 'gender'
def lookups(self, request, model_admin):
return (
('-', _(u'未定')),
(u'男', _(u'男')),
(u'女', _(u'女')),
)
def queryset(self, request, queryset):
if self.value():
return queryset.filter(usage=self.value())
else:
return queryset
class StudentAdmin(admin.ModelAdmin):
actions = None
save_on_top = True
[中間顯示欄位設定部分略]
def response_change(self, request, obj):
if request.POST.has_key("_viewnext"):
msg = (_('The %(name)s "%(obj)s" was changed successfully.') %
{'name': force_unicode(obj._meta.verbose_name),
'obj': force_unicode(obj)})
next = obj.__class__.objects.filter(id__gt=obj.id)\
.order_by('id')[:1]
if next:
self.message_user(request, msg)
return HttpResponseRedirect("../%s/" % next[0].pk)
return super(StudentAdmin, self).response_change(request, obj)
現在按下儲存並到下一筆只能按照id排序往前進
若我想要預設跟現在一樣
若先用StudentListFilter1篩出男學生後
按下鈕只在男學生中依id排序前進一筆應該要怎麼修改呢?
謝謝大家

Links booklink

Contact Us: admin [ a t ] ucptt.com