博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
将DJANGO管理界面的filter_horizontal移到前面来复用
阅读量:7064 次
发布时间:2019-06-28

本文共 1496 字,大约阅读时间需要 4 分钟。

参考URL:

http://www.hoboes.com/Mimsy/hacks/replicating-djangos-admin/reusing-djangos-filter_horizontal/

http://www.hoboes.com/Mimsy/hacks/replicating-djangos-admin/

我要想的东东,没有上面讲的那么复杂,就是想在用户操作M2M时,可以从容的选择不同的选项,而不用担心哪些东东被漏了。

按上面的文档,我的实现如下:

一,新建一个模板文档,将相关的DJANGO管理里的CSS,JS移出来备用。

popupplus.html(注意初始化的参数,0为横向,1为纵向)

{% load staticfiles %}
{% if multiple %}{% endif %}

二,重写forms.py里的代码,让其继承forms.SelectMultiple来改写:

class MultipleSelectWithPop(forms.SelectMultiple):    def render(self, name, *args, **kwargs):        html = super(MultipleSelectWithPop, self).render(name, *args, **kwargs)        popupplus = render_to_string("rightmanage/popupplus.html", {
'field': name, 'multiple': True}) return html+popupplus

三,让相关字段继承这个类,来实现横向选择。

class RightManageFATForm(forms.ModelForm):    def __init__(self, *args, **kwargs):        super(RightManageFATForm, self).__init__(*args, **kwargs)    fat_users = forms.ModelMultipleChoiceField(        User.objects,        widget=MultipleSelectWithPop,    )    name = forms.CharField(        required=False,        error_messages={
'required': "不能为空"}, label=u"项目名称", widget=forms.TextInput( attrs={ 'class': 'uk-width-1-4', 'disabled': 'true', } ), ) class Meta: model = Site fields = ['name', 'fat_users', ] exclude = ['app_name', 'description', 'app_name', 'manage_user', 'uat_users', 'prd_users', 'valid_users', ]

四,然后,,好像就抽定啦。。。:)好像字体没调好,暂时不管。。。

转载地址:http://keill.baihongyu.com/

你可能感兴趣的文章
“达观杯”文本分类挑战赛新手入门代码
查看>>
【设计模式系列】OO设计原则之SRP-单一职责原则
查看>>
JDBC(二)驱动程序类型发展历程
查看>>
【笔记】震惊!世上最接地气的字符串浅谈(Trie && AC自动机 && Manacher)
查看>>
oVirt (Open Virtual) 之 VDSM 学习笔记 (二) 流程追踪
查看>>
top命令的使用
查看>>
修改BASH的配色
查看>>
iOS开发之下拉刷新和上拉加载更多
查看>>
IOS指纹识别调用
查看>>
Struts2 中#、@、%和$符号的用途
查看>>
82.角色管理Extjs 页面
查看>>
android开发之自定义组件
查看>>
espcms会员二次开发文件说明——会员,时间格式
查看>>
排序降低---------------------
查看>>
wMy_Python ~储存相关~
查看>>
Handler.ashx无刷新分页
查看>>
LOJ#2082. 「JSOI2016」炸弹攻击 2(计算几何+双指针)
查看>>
[论文笔记] Live Migration of Virtual Machines (NSDI, 2005)
查看>>
左神算法进阶班1_4Manacher算法
查看>>
Analysis by Its History_exercise 1.4
查看>>