Django 1.6Admin
来源:互联网 发布:python全栈是什么意思 编辑:程序博客网 时间:2024/05/16 05:52
1.
ModelAdmin.inlines
将有外键的子类包含进视图 ,实例:
class Author(models.Model): name = models.CharField(max_length=100)class Book(models.Model): author = models.ForeignKey(Author) title = models.CharField(max_length=100)
class BookInline(admin.TabularInline): model = Bookclass AuthorAdmin(admin.ModelAdmin): inlines = [ BookInline, ]2.
list_display = ('first_name', 'last_name')列表显示字段。记住:他不会显示manytomany字段
特殊用法:
class Person(models.Model): first_name = models.CharField(max_length=50) birthday = models.DateField() def born_in_fifties(self): return self.birthday.strftime('%Y')[:3] == '195' born_in_fifties.boolean = Trueclass PersonAdmin(admin.ModelAdmin): list_display = ('name', 'born_in_fifties')将生日为195的设置为true,并且显示对号或者横线。 用途,学生成绩是否及格,当大于60设置为true。
list_display = ('__unicode__', 'some_other_field')
colored_first_name.admin_order_field = 'first_name'设置字段排序
list_display_links = ('first_name', 'last_name')设置超链接字段
3.ModelAdmin.list_editable
设置列表字段是否可以编辑,常用语文章更改目录,修改某些非外键字段。不过外键也可以修改,如果某个字段设置为links,则该字段不能被修改
# raw_id_fields = ('goods',)
# list_editable=('goods','price','num','producer','in_times','is_active')
4.
list_filter = ('is_staff', 'company')过滤字段。
自定义过滤字段:
from datetime import datefrom django.utils.translation import ugettext_lazy as _from django.contrib.admin import SimpleListFilterclass DecadeBornListFilter(SimpleListFilter): title = _('decade born')#过滤标题 # 设置url参数,?decade='80s' parameter_name = 'decade' def lookups(self, request, model_admin): """ 值,显示属性 """ return ( ('80s', _('in the eighties')), ('90s', _('in the nineties')), ) def queryset(self, request, queryset): """过滤 """ if self.value() == '80s': return queryset.filter(birthday__gte=date(1980, 1, 1), birthday__lte=date(1989, 12, 31)) if self.value() == '90s': return queryset.filter(birthday__gte=date(1990, 1, 1), birthday__lte=date(1999, 12, 31))class PersonAdmin(ModelAdmin): list_filter = (DecadeBornListFilter,)
from django.contrib.admin import BooleanFieldListFilterclass PersonAdmin(ModelAdmin): list_filter = ( ('is_staff', BooleanFieldListFilter), )boolean类型的filter
class FilterWithCustomTemplate(SimpleListFilter): template = "custom_template.html"自定义过滤器模板默认模板admin/filter.html
5.
list_max_show_all
显示全部 最大数据,总数据超过该数据将不显示显示全部
list_per_page
没页显示数据条数
ordering
排序
class ArticleAdmin(admin.ModelAdmin): prepopulated_fields = {"字段1": ("ziduan2",)}当字段1填写数据的同时,字段2也同时被填充,数据一致
class PersonAdmin(admin.ModelAdmin): radio_fields = {"group": admin.VERTICAL}单选按钮,适用于开关(必须填)。如是否有效
class ArticleAdmin(admin.ModelAdmin): raw_id_fields = ("newspaper",)外键选择
from django.utils.html import format_html_joinfrom django.utils.safestring import mark_safeclass PersonAdmin(ModelAdmin): readonly_fields = ('address_report',) def address_report(self, instance): # assuming get_full_address() returns a list of strings # for each line of the address and you want to separate each # line by a linebreak return format_html_join( mark_safe('<br/>'), '{0}', ((line,) for line in instance.get_full_address()), ) or "<span class='errors'>I can't determine this address.</span>" # short_description functions like a model field's verbose_name address_report.short_description = "Address" # in this example, we have used HTML tags in the output address_report.allow_tags = True只读,注意:可以向模板页面一样格式化数据,同时给只读属性增加自定义样式。
6.
6.ModelAdmin.save_as
当是修改数据的时候,将新增一个替换为保存为新的,并且旧的不替换,新增id保存
7.
ModelAdmin.save_on_top
设置保存按钮到顶部!
8.
search_fields = ['foreign_key__related_fieldname']设置搜索。
- Django 1.6Admin
- Django 1.6Admin(二)
- Django Admin
- django admin
- django admin
- Django Admin
- Django - Admin
- Django-admin
- Django Admin
- Django Admin
- Django admin
- Django-admin
- Django笔记-Admin
- 【Django】admin使用
- Django Admin 模块探究
- Django 增加admin site
- Django笔记-Admin
- grappelli美化Django Admin
- 数据库优化<七>SQL优化之SELECT优化 ——group by 优化
- Matlab的MFC——matlab上GUI的设计与图像去模糊系统
- Android在引用其他工程时,被引用的工程存放位置的问题
- Oracle 之 导入导出dmp文件
- UVa 138 Street Numbers / 佩尔方程
- Django 1.6Admin
- Bypassing iPhone Code Signatures - 待翻译
- windows远程桌面如果超出最大连接数, 使用命令行mstsc /console登录即可
- 浏览目录创建别名
- Django 1.6Admin(二)
- POJ-3278 Catch That Cow(广搜+剪枝)
- arm寄存器之r14,r15
- VS2008的绿色精简版,只有VC2008部分
- 解决mysql服务无法启动问题