zoukankan      html  css  js  c++  java
  • Django(3)

    class Book(models.Model):
        id=models.AutoField(primary_key=True)
        name=models.CharField(max_length=32)
        publisher=models.ForeignKey(to=Publisher)
    
    今天的重点在于外键
    publisher与publisher_id
    publisher是对象,publisher_id是id值

    一 web框架介绍

    具体介绍Django之前,必须先介绍WEB框架等概念。

    web框架: 别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你自己需要的样子。

    一般web框架的架构是这样的:

    其他的基于python的web框架,如tornado、flask、webpy都是在这个范围内进行增删裁剪的。

    例如tornado用的是自己的异步非阻塞“wsgi”,flask则只提供了最精简和基本的框架。Django则是直接使用了WSGI,并实现了大部分功能。

    二 Django的MTV模型组织

    目录分开,就必须有机制将他们在内里进行耦合。在Django,urls、orm、static、settings等起着重要的作用。

    三 Django实战案例

    当我们创建完Django之后,我们先来看看目录这些是用来干什么的

    创建app(应用程序)

    我们来看看app01下面的目录里面有什么?

    四:了解这些之后来看看我们今天老师写的作业流程。

    第一步:根据MTV模型,我们首先想启动Django服务器,然后我们向这个服务器发送请求。

    第二步:WSGI通信模块来接受消息

    第三步:到达了url模块(如果想了解上一步怎么样到达这一步点击这里),被捕捉到,然后跳入views中的publisher_list

    第四步:到views中找到函数对象publisher_list。

    第五步:找到类中和打开publisher_list2.html

    第六步:点击编辑跳转,点击删除跳出。 

    第七步:找到views中的delete_publisher,edit_publisher

    1. 编辑书籍信息

    2. Django的模板语言(字符串替换的规则)

    1. {{变量}} {{变量.属性}}
    2. for循环
    {% for i in xx %}
    {{i}}
    {% endfor %}

    forloop.counter --> 计数

    3. if判断
    {% if 条件 %}
    条件成立要做的事儿
    {% else %}
    条件不成立要做的事儿
    {% endif %}

    3. 作者增删改查
    作者和书是多对多的关系
    book author book2author 

    1. 作者关联的书有多个
    我们怎么通过Django 的 ORM 取到和我这个作者关联的所有书
    author_obj.books.all() --> 书籍对象的列表

    2. 如何在页面上展示出 我这个作者关联的所有的书籍
    {% for book in author_obj.books.all %}
    {% if forloop.last %}
    {{book.title}}
    {% else %}
    {{book.title}},
    {%endif%}
    {% endfor %}

  • 相关阅读:
    MySQL慢查询日志总结
    SQL Server 关于列的权限控制
    Oracle global database name与db link的纠缠关系
    TCP Provider The semaphore timeout period has expired
    SQL SERVER 中如何用脚本管理作业
    Unable to determine if the owner (DomainUserName) of job JOB_NAME has server access
    TNS-12535: TNS:operation timed out案例解析
    ORA-12154 & TNS-03505 案例分享
    MS SQL巡检系列——检查数据库上一次DBCC CHECKDB的时间
    查看数据库表的数据量和SIZE大小的脚本修正
  • 原文地址:https://www.cnblogs.com/shanjinghao/p/9179995.html
Copyright © 2011-2022 走看看