Django框架02:管理站点

  • 内容
  • 相关

一、Django管理站点

1.服务器
    ①运行如下命令可以开启服务器
python manage.py runserver ip:port
    ②可以不写ip,默认端口为8000
    ③这是一个纯python编写的轻量级web服务器,仅在开发阶段使用
python manage.py runserver 8080
    ④打开浏览器,输入网址127.0.0.1:8000可以打开默认页面
    ⑤如果修改文件不需要重启服务器,如果增删文件需要重启服务器
    ⑥通过ctrl+c停止服务器

2.管理操作
    站点分为内容发布和公共访问两部分,内容发布的部分负责添加、修改、删除内容,开发这些重复的功能是一件单调乏味、缺乏创造力的工作。为此,Django根据定义的模型类完全自动地生成管理模块。

3.使用django的管理
    ①创建一个管理员用户,按提示输入用户名、邮箱、密码。
python manage.py createsuperuser
    ②启动服务器,通过127.0.0.1:8000/admin访问,输入上面创建的用户名、密码完成登录。
    ③进入管理站点,默认可以对groups、users进行管理。

4.管理界面本地化
    ①编辑settings.py文件,设置编码、时区 
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
    ②向admin注册应用的模型
        打开应用下admin.py文件,注册模型
from django.contrib import admin
from models import 应用
admin.site.register(应用, 应用管理器)
@admin.register(应用)
    刷新管理页面,可以对数据进行增删改查操作
    问题:如果在str方法中返回中文,在修改和添加时会报ascii的错误
    解决:在str()方法中,将字符串末尾添加.encode('utf-8')

5.自定义管理页面
    Django提供了admin.ModelAdmin类,通过定义ModelAdmin的子类,来定义模型在Admin界面的显示方式。
class QuestionAdmin(admin.ModelAdmin):
    ...
admin.site.register(Question, QuestionAdmin)
     1) 列表页属性

        ①list_display:显示字段,可以点击列头进行排序
list_display = ['pk', 'btitle', 'bpub_date']
        ②list_filter:过滤字段,过滤框会出现在右侧   
 list_filter = ['btitle']
        ③search_fields:搜索字段,搜索框会出现在上侧
 search_fields = ['btitle']
        ④list_per_page:分页,分页框会出现在下侧   
list_per_page = 10
     2) 添加、修改页属性

        ①fields:属性的先后顺序
fields = ['bpub_date', 'btitle']
        ②fieldsets:属性分组
fieldsets = [
    ('basic',{'fields': ['btitle']}),
    ('more', {'fields': ['bpub_date']}),
]
您阅读这篇文章共花了:  

本文标签:

版权声明:转载请带上版权原创为《星城

解压密码:若设有密码均为:www.xcooo.cn

收录状态:百度已收录点击查看详情

Django框架02:管理站点

发表评论

您可以选择匿名评论,保护个人隐私 !