Skip to content

Django学习总结(一) #61

@PyxYuYu

Description

@PyxYuYu

Knowing yourself is the beginning of all wisdom.

0x01 Django

  • Django Blog 学习总结
    • Blog 这个项目跟着书本断断续续的差不多20天,了解了 Django 开发的基本流程,顺带了点 BootstrapSolrTomcat 的知识
    • Django 主要组成部分
      • urls.py
        • 指出什么样的 URL 对应什么样的视图,利用了正则匹配来一一对应
      • models.py
        • 数据模型,用 Python 类来描述数据表,Django 支持 sqlite3Python自带,无需安装),MySQLPostgreSQL等数据库,只需在 settings.py 中更改配置即可切换数据库,每次编辑更改 models.py 文件,如果需要将改动应用到数据库中,需要进行数据迁移(也就是同步到数据库),利用 makemigrationsmakemigrate 命令
      • views.py
        • 页面的业务逻辑,处理用户发起的请求,通过渲染 tempaltes 中的网页模板文件来显示内容
      • templates 文件夹
        • HTML模板,用于被渲染
      • admin.py
      • forms.py
      • settings.py
        • Django 设置和配置文件
    • Django 项目实践步骤
      • 创建一个 project
        • django-admin.py startproject project_name
        • 创建后,生成一个 project_name 文件夹
          project_name/
              manage.py
          	project_name/
          	    __init__.py
          		settings.py
          		urls.py
          		wsgi.py
        
        • manage.py : 一种命令行工具,允许以多种方式和 Django 项目进行交互,python manage.py help 可以查看帮助,无需编辑
        • __init__.py : 空文件,无需编辑,让 Python 认为这是开发所需文件
        • settings.pyDjango 项目的设置和配置文件
        • urls.pyDjango 项目的 URL 设置文件,利用正则匹配将 URL 和视图一一对应
        • wsgi.py : 用 WSGI 应用的配置来运行项目
      • 创建一个 app
        • project_name 文件夹内,创建
          django-admin.py startapp app_name
        
        • 创建后,生成一个 app_name 文件夹
          app_name/
              __init__.py
          	admin.py
          	apps.py
          	models.py
          	tests.py
          	views.py
              migrations/
          	    __init__.py
        
        • migrations 文件夹 : 运行 python manage.py makemigrations 所产生的数据改动文件都会被放在此文件夹内
      • 运行开发服务器
        • python manage.py runserver
          • 默认: http://localhost:8000 仅监听本地连接
          • 更换端口: python manage.py runserver 8888
          • 允许外网或局域网访问: python manage.py runserver 0.0.0.0:8000
            • 局域网访问: http://192.168.0.103:8000
    • Django Tips
      • urls.py 中的 urlpatterns
        • 其中的每一个 URLpattern 都是一个元组
        • 比如: ('^p/$', fun1)
          • 此元组中第一个元素是模式匹配字符串(正则表达式),第二个元素是那个模式将使用的视图函数
        • Django 在检查 URL 模式前,会移除每一个申请的 URL 开头的斜杠 / ,所以写 URLpattern 的时候前面不用写斜杠 / ,末尾结束如果是 /$ 的话,如果匹配的时候,URL 没有输入 /,虽然不匹配,但是默认会将尾部没有斜杠 / 的申请 URL,重定向至尾部包含斜杠的相同字眼 URL (这个情况受 settings.py 中的 APPEND_SLASH 控制,默认 APPEND_SLASH=True 会自动添加斜杠,默认这个参数是没有的)
    • Python Tips
      • #!/usr/bin/env python
        • Shebang ,类 unix 系统根据文件头决定脚本运行方式,可以直接在 shell 中输入 ./XX.py 来运用文件关联程序来打开
      • Python 搜索路径
        • 使用 import 语句,Python 会首先在当前目录查找,如果文件不存在,就在系统设置的目录查找

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions