模型类:
class Verificationadmin(admin.Modeladmin): List_display = ('ID','asset_code','scan_time','credential','status','operator','location','auth_code','product_details') List_filter = ('status','location') ordering = ('-scan_time',) search_fIElds = ('asset_code',) actions = ['set_interval'] class AddScanningIntervalForm(forms.Form): _selected_action = forms.CharFIEld(Widget=forms.MultipleHIDdeninput) period_choice=["4 hrs","6 hrs","8 hrs","10 hrs","12 hrs"] interval = forms.ChoiceFIEld(choices=[(x,x) for x in period_choice]) @csrf_exempt def set_interval(self,request,queryset): print "before action" form = None if 'apply' in request.POST: form = self.AddScanningIntervalForm(request.POST) print "action taken" if form.is_valID(): interval = form.cleaned_data['interval'] print interval count = 0 for vObj in queryset: print vObj.asset_code,vObj.status,interval at=Alerttable(asset_code=vObj.asset_code,status=vObj.status,interval=interval) at.save() count += 1 self.message_user(request,"Scanning Policy Successfully added to %s assets %s." %count) return httpResponseRedirect(request.get_full_path()) if not form: form = self.AddScanningIntervalForm(initial={'_selected_action': request.POST.getList(admin.ACTION_CHECKBox_name)}) return render_to_response('admin/set_alert.HTML',{'verifications': queryset,'tag_form': form},context_instance=RequestContext(request)) set_interval.short_description = "Add Periodic Scanning Policy"
添加模板部分:
<!DOCTYPE HTML>{% extends "admin/base_site.HTML" %}{% block content %}<p>Select tag to apply:</p><form action="" method="post"> {{ tag_form }} {% csrf_token %} <p>The scanning policy will be applIEd to:</p> <ul>{{ verifications|unordered_List }}</ul> <input type="hIDden" name="action" value="add_tag" /> <input type="submit" name="apply" value="Set Interval" /></form>{% endblock %}
它工作正常到中级页面,但是在中间页面中选择表单中的一个警报选项并单击设置间隔按钮后,我得到结果“没有选择 *** 作”
解决方法 这个问题有点陈旧,但未来有任何参考;确保中间表单中的’action’属性与admin函数名称匹配.在这种情况下,’set_interval’而不是’add_tag’.POST上下文也必须包含’_selected_action’值,这些值应与所选项pks匹配.
@H_419_2@ 总结以上是内存溢出为你收集整理的添加中间表单后,Django管理站点 *** 作无法正常工作全部内容,希望文章能够帮你解决添加中间表单后,Django管理站点 *** 作无法正常工作所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)