使用中间页面的Django管理操作

使用中间页面的Django管理操作,django,forms,admin,Django,Forms,Admin,我有一个有很多字段的模型。我只有几个我想被要求的字段。所以,我希望有一个简短的变更列表,而不是超长的变更列表,然后有可以给出预定义字段子集的管理操作 初始操作会将我带到正确的页面,但当我提交表单时,它会将我返回到我指定的任何页面,但不会更新字段。如果需要的话,我可以把它拆掉,重新开始。我想我真正需要知道的是,我应该在html的action=”“部分中添加什么才能使递归正常工作 我正在使用django 1.7。因为我在一个高度信息安全的领域工作,所以我不得不把我的很多领域混淆为cya 这是我的管理

我有一个有很多字段的模型。我只有几个我想被要求的字段。所以,我希望有一个简短的变更列表,而不是超长的变更列表,然后有可以给出预定义字段子集的管理操作

初始操作会将我带到正确的页面,但当我提交表单时,它会将我返回到我指定的任何页面,但不会更新字段。如果需要的话,我可以把它拆掉,重新开始。我想我真正需要知道的是,我应该在html的action=”“部分中添加什么才能使递归正常工作

我正在使用django 1.7。因为我在一个高度信息安全的领域工作,所以我不得不把我的很多领域混淆为cya

这是我的管理员

    class CredentialAdmin(admin.ModelAdmin):
    fields = ['reservedBy','reserveto']
    list_display = ['reservedBy','reserveto']

    class reserveToFormAdmin(forms.Form):
        reservedBy  = forms.CharField(widget=forms.Textarea, max_length=50)
        reserveto = forms.DateTimeField(widget=forms.DateTimeInput)


    def reserveCred(self, request, queryset):
        form = None
        plural = ''
        if 'submit' in request.POST:
            form = self.reserveToFormAdmin(request.POST)
            for f in form.fields:
                print f
            print form.is_valid()
            print form.errors
            if form.is_valid():
                reservetos = form.cleaned_data['reserveto']
                reservedBys = form.cleaned_data['reservedBy']
                print "hello"
                count = 0
                for cred in queryset:
                    cred.reserveto = reservetos
                    cred.reservedBy = reservedByss
                    cred.save()
                    count += 1                  
                if count != 1:
                    plural = 's'
                self.message_user(request, "Successfully reserved %s     cred%s." % (count, plural))
                return HttpResponseRedirect(request.get_full_path(),c)
        if not form:
            form = self.reserveToFormAdmin(initial={'_selected_action' :     request.POST.getlist(admin.ACTION_CHECKBOX_NAME)})
        return render(request,'admin/reserveCreds.html',{'creds':queryset,     'form':form, 'path':request.get_full_path()})
reserveCred.short_description = "Reserve Selected Creds"
actions =     [check_out_a_cred,check_in_a_cred,audit_creds,CompareAudits,reserveCred]
reserveCreds.html

{% extends "admin/base_site.html" %}

{% block content %}

<p>How long and which department to reserver creds:</p>

<form action="{{ path }}" method="post">{% csrf_token %}    

    {{ form }}
    <input type="submit" name="submit" value="submit" />
    <input type="button" value = "Cancel" />
</form>
<h2> reserving: </h2>
<ul>
    {% for cred in creds %}
    <li> {{ cred.userid }} </li>
    {% endfor %}
</ul>
{% endblock %}
{%extends“admin/base\u site.html”%}
{%block content%}
保留信用卡的时间和部门:

{%csrf_令牌%} {{form}} 保留:
    {cred%中的cred为%1}
  • {{cred.userid}
  • {%endfor%}
{%endblock%}
你能把这个弄明白吗?我也有同样的问题。有什么帮助吗?