Loading

django简介

Django框架介绍

  • 现在的框架一般分为MVC框架和MTV框架,其中MTV框架是Django使用的框架,思想借鉴MVC(Model View Controller ,即模型(model),视图(View),控制器(Controller))
  • MTV框架
    • Model(模型): 负责业务对象和数据库的对象(ORM)
    • Template(模板):负责如何把页面展示给用户
    • View(视图):负责业务逻辑,并在适当的时候调用Model和Template
    • 除此之外,Django还有一个名为urls的分发器,作用是将一个个的URL页面请求分发给不同的view进行处理,而view再调用相应的Model和Template
    • django框架中的 views.py和urls.py 相当于MVC框架中的controller , model.py相当于MVC框架中的model,负责和数据库进行的操作,template包相当于MVC框架中的view,负责将画面呈现给用户

img

django的下载安装和基本使用

下载安装

1.11版本是长期支持版本(LTS),最后一个支持python2 的版本

命令行下载

  • pip3 install django==1.11.21 -i https://pypi.tuna.tsinghua.edu.cn/simple

pycharm下载同模块安装,注意版本

创建项目

django-admin startproject 项目名

此方法创建没有templates文件夹,而且配置文件相关项目要增加

pycharm创建时,如果新建虚拟环境,默认装最新版的django

mysite/
├── manage.py  # 管理文件
└── mysite  # 项目目录
    ├── __init__.py
    ├── settings.py  # 配置
    ├── urls.py  # 路由 --> URL和函数的对应关系
    └── wsgi.py  # runserver命令就使用wsgiref模块做简单的web server

启动项目

切换到项目的根目录下 manage.py

python manage.py runserver 默认http://127.0.0.1:8000/

python manage.py runserver 80 在80端口启动

python manage.py runserver 0.0.0.0:80 0.0.0.0:80

基本使用

# 导入
from django.shortcuts import HttpResponse,render

# 函数
def index(request):
    # return HttpResponse('index')
    return render(request,'index.html')

# url和函数对应关系
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^index/', index),
]

静态文件的配置

  • 按照STATICFILES_DIRS顺序查找,直到找到第一个

  • 项目的子目录根目录下 的static文件需要写 dirs,如果将static放入app中,不需要写 会自动导入

    img

    #在settings.py文件中修改
    STATIC_URL = '/static/'   # 别名
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static1'), # 静态文件注册路径,有序
        os.path.join(BASE_DIR, 'static'),
        os.path.join(BASE_DIR, 'static2'),
    ]
    
  • 当使用static包里的文件时,导入的格式如下

    <link rel="stylesheet" href="/static/css/login.css">   # 别名开头
    
  • 通过命令行创建的还需要在setting中添加

    'DIRS': [os.path.join(BASE_DIR, 'templates')]   #让模板前端文件和本身文件发生关联
    

app的创建和使用

一个Django项目可以分为很多个APP,用来隔离不同功能模块的代码。

  • python manage.py startapp myapp创建app
  • pycharm Tools run manage.py Task 之后可以直接输入创建 如 startapp myapp
INSTALLED_APPS = [
	...
    'myapp',
    'myapp.apps.App01Config',  # 推荐写法
]

常用命令汇总

django-admin startproject mysite # 新建项目
python manage.py runserver 127.0.0.1:8000  # 启动项目
python manage.py startapp app01	#新建app
python manage.py makemigrations # 创建数据库迁移文件
python manage.py migrate		#数据库迁移
python manage.py createsuperuser #开启超级账户
posted @ 2019-07-15 16:26  陌路麒麟  阅读(101)  评论(0编辑  收藏  举报