Django站点管理、视图和URL(管理界面本地化、创建管理员、注册模型类、发布内容到数据库、定义视图、配置URLconf)

1、Django站点管理

  • 站点: 分为内容发布公共访问两部分
  • 内容发布的部分由网站的管理员负责查看、添加、修改、删除数据
  • Django能够根据定义的模型类自动地生成管理模块
  • 使用Django的管理模块, 需要按照如下步骤操作 :
    • 1.管理界面本地化
    • 2.创建管理员
    • 3.注册模型类
    • 4.发布内容到数据库

1.1.管理界面本地化

  • 本地化是将显示的语言、时间等使用本地的习惯,这里的本地化就是进行中国化.
  • 中国大陆地区使用简体中文, 时区使用亚洲/上海时区, 注意这里不使用北京时区.
  • 本地化前

  • 本地化后

1.2.创建管理员

  • 创建管理员的命令 :

      python manage.py createsuperuser
    
  • 按提示输入用户名、邮箱、密码

  • 重置密码

  • python manager.py changepassword 用户名
    
  • 登陆站点 :http://127.0.0.1:8000/admin

    • 需要服务器是启动状态

登陆站点成功

  • 站点界面中没有书籍和人物管理入口,因为没有注册模型类

1.3.注册模型类

  • 应用admin.py文件中注册模型类

    • 需要导入模型模块 :from book.models import BookInfo,PeopleInfo

注册模型后

注册模型成功后, 就可以在站点管理界面方便快速的管理数据.

1.4.发布内容到数据库

  • 发布内容后,优化模型类展示
# 准备书籍列表信息的模型类
class BookInfo(models.Model):
    # 创建字段,字段类型...
    name = models.CharField(max_length=10)

    def __str__(self):
        """将模型类以字符串的方式输出"""
        return self.name

【如果设置中文报错时,应该是创建虚拟环境的问题  -p python3】

2、Django视图和URL

  • 站点管理页面做好了, 接下来就要做公共访问的页面了.
  • 对于Django的设计框架MVT.
    • 用户在URL中请求的是视图.
    • 视图接收请求后进行处理.
    • 并将处理的结果返回给请求者.
  • 使用视图时需要进行两步操作
    • 1.定义视图
    • 2.配置URLconf

2.1. 定义视图

  • 视图就是一个Python函数,被定义在应用views.py中.
  • 视图的第一个参数是HttpRequest类型的对象reqeust,包含了所有请求信息.
  • 视图必须返回HttpResponse对象,包含返回给请求者的响应信息.
  • 需要导入HttpResponse模块 :from django.http import HttpResponse

  • 定义视图函数 : 响应字符串OK!给客户端

思考 : 如何才能让请求找到视图?

2.2. 配置URLconf

  • 查找视图的过程 :

    • 1.请求者在浏览器地址栏中输入URL, 请求到网站.
    • 2.网站获取URL信息.
    • 3.然后与编写好的URLconf逐条匹配.
    • 4.如果匹配成功则调用对应的视图.
    • 5.如果所有的URLconf都没有匹配成功.则返回404错误.

URLconf入口

【ROOT_URLCONF是我们工程的url的配置的入口,默认是工程名.urls,可以修改的,一般情况下我们是不修改的】

  • 需要两步完成URLconf配置

    • 1.在项目中定义URLconf
    • 2.在应用中定义URLconf
  • 项目中定义URLconf

应用中定义URLconf

  • 提示:一条URLconf包括URL规则、视图两部分

    • URL规则使用正则表达式定义.
    • 视图就是在views.py中定义的视图函数.

  • url匹配过程

2.3. 测试:请求访问

  • http://127.0.0.1:8000/

2.4. 总结

视图处理过程如下图:

使用视图时需要进行两步操作,两步操作不分先后

  1. 配置URLconf
  2. 应用/views.py中定义视图

View和URL匹配流程:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值