扩展到django的管理站点以添加ajax视图。

django-admin-ext的Python项目详细描述


Django管理站点的扩展。

当前包括:
-basecustomurladmin:hook向模型管理员提供其他url。

-baseajaxmodeladmin:hook具有一个表单,该表单根据特定的字段选择动态获取某些表单字段。

-baseajaxmodelform:form to帮助设置和保存基于所选其他字段的动态字段。

-在modeladmin中,子类baseajaxmodeladmin并确保表单指向动态表单。

-将有一个以/ajax/结尾的新url来处理
ajax请求。

-django的modeladmin将只显示字段集中声明的字段
,因此我们确保ajax字段在不显示时不显示有足够的数据可以显示,并且它们在显示时会显示。
因此,我们目前不考虑您在ModelAdmin中声明的任何字段集如果你知道解除这个限制的好方法,请提交修补程序。



BaseAjaxModelForm:
-将ajax_change_字段设置为其
更改触发ajax调用的表单字段的名称,或将ajax_change_字段设置为其更改触发ajax调用的字段名称列表

-在您的表单中设置dynamic_fields属性以返回字典
,字典的键是字段名,值是实例化字段。

@property
def dynamic_fields(self):
return{
“my_field”:CharField(initial=“hello world!”,label=“Greeting”),
}


表单将确保所有动态字段值
都保存到实例中。

-确保静态内容中有djadmin/ext/static/djadmin/ext/admin/ajax.js
中的文件。

-ajax调用获取新表单,并用更新的“.module”类替换所有元素表单。

注意:这将耗尽您声明的任何内联表单,因此如果您需要内联表单,我们很乐意接受一个补丁,使其成为可能。


测试:
要测试管理员,我们编写了selenium测试。测试将尝试
启动django的测试服务器,打开一个firefox浏览器窗口,
执行测试,并验证页面上的操作是否符合
的预期。

python setup.py test

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
ApachePOI如何通过java从excel文件中删除空白列?   linux到后台Java服务应用程序的简单发送/接收接口   java ActionBarPullToRefresh什么都没发生   java从millis获取错误的整数天   java相同的代码在两个不同的包上表现不同   java将每个新的char元素写入一个文件(如果被覆盖)   mysql如何在Java中通过外键链接的多个表中插入数据   java环境下mysql网络文件访问   java当使用构建器模式时,为什么我不应该重用builderobject来访问对象配置?   java jQueryServlet post异常失败   java应该使用什么逻辑来创建像《愤怒的小鸟》中那样的锁屏   java Android:在不滑动的情况下更改ViewPager中的片段   java在使用我的程序逻辑时获得空输出