前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WEB框架之---Django初级篇

WEB框架之---Django初级篇

作者头像
py3study
发布2020-01-15 11:28:02
1.2K1
发布2020-01-15 11:28:02
举报
文章被收录于专栏:python3

一、下载与安装(Windows版)

    下载地址:https://www.djangoproject.com/download/

    或者通过命令:pip install django==1.11.2进行安装(Python3使用pip3)推荐使用此版本

    安装完成后找到django-admin.exe所在的路径,将其添加到环境变量Path中,以便于今后在任何位置运行命令。

二、创建django程序

    1、终端方式创建

代码语言:javascript
复制
   django-admin startproject my_site
   #创建一个名称为my_site的django程序,即文件夹,在哪个目录执行命令即在那个目录创建

     执行成功之后会生成如图目录结构:

wKioL1lSB2ShsXwBAAC2OQb5dGg897.png
wKioL1lSB2ShsXwBAAC2OQb5dGg897.png
代码语言:javascript
复制
    执行:python manage.py runserver 127.0.0.1:8000

       这时,django已经在本地跑起来了...

其他常用命令:

  python manage.py runserver 0.0.0.0  #不限定IP和端口       python manage.py startapp appname #在项目中创建app即不同的功能模块       python manage.py syncdb                  #同步数据库       python manage.py makemigrations    #基于当前的model创建新的迁移策略文件       python manage.py migrate               #用于执行迁移动作

          python manage.py createsuperuser     #创建超级管理员

    注:migration是基于App的, 因此, 我们可以针对某些app不启用migration功能

    2、IDE方式创建django项目

        工具:pycharm

        步骤:File---NewProject---Django---选择好Python解释器然后点击“create”即可搞定

三、配置

    1、配置数据库

代码语言:javascript
复制
DATABASES = {
    'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME':'dbname',
    'USER': 'root',
    'PASSWORD': 'xxx',
    'HOST': '',
    'PORT': '',
    }
}

    可在与项目名同名的目录中找到settings.py文件然后将默认的DATABASES项进行修改,Django支持多种数据库,上述为mysql配置方式,详情请参考官方文档

    另外,Django默认的连接mysql的模块为MysqlDB,而python3中还没有此模块,需要使用pymysql,这时需要在__init__.py中导入pymysql并设置

代码语言:javascript
复制
import pymysql
pymysql.install_as_MySQLdb()

    2、模板配置

代码语言:javascript
复制
TEMPLATE_DIRS = (
        os.path.join(BASE_DIR,'templates'),
    )

    此项一般不用设置,了解其是放置模板文件(html)的即可

    3、静态文件路径

代码语言:javascript
复制
STATICFILES_DIRS = (
        os.path.join(BASE_DIR,'static'),
    )

     此目录放置网站所用到的图片、媒体、样式、插件等文件

    4、刚接触django,建议先注释掉settings.py文件中的以下一行,后面做以解释,不然测试时有可能出现错误

代码语言:javascript
复制
MIDDLEWARE中的:# 'django.middleware.csrf.CsrfViewMiddleware',

四、路由系统

    所谓路由,其实就是路径,导向,即一个URL请求来到服务器端之后,django怎么取匹配这个url并且得需要判断这个url具体应该访问到哪些资源或者定位到哪个地方,然后再由相应的地方处理此请求并且返回给客户端。

    1、单一路由对应:一个url对应一个处理函数,即

代码语言:javascript
复制
    url(r'^index$', views.index),

    2、基于正则的路由

代码语言:javascript
复制
    url(r'^index/(\d*)', views.index),
    url(r'^manage/(?P<name>\w*)/(?P<id>\d*)', views.manage),

    3、添加额外的参数

代码语言:javascript
复制
    url(r'^manage/(?P<name>\w*)', views.manage,{'id':333}),

    4、为路由映射设置名称

代码语言:javascript
复制
    url(r'^home', views.home, name='h1'),
    url(r'^index/(\d*)', views.index, name='h2'),

设置名称之后,可以在不同的地方调用,如:

  • 模板中使用生成URL     {% url 'h2' 2012 %}
  • 函数中使用生成URL     reverse('h2', args=(2012,))      路径:django.urls.reverse
  • Model中使用获取URL  自定义get_absolute_url() 方法

    5、根据app对路由规则进行分类(路由分发)

代码语言:javascript
复制
    url(r'^web/',include('web.urls')),

django中的路由系统和其他语言的框架有所不同,在django中每一个请求的url都要有一条路由映射,这样才能将请求交给对一个的view中的函数去处理。其他大部分的Web框架则是对一类的url请求做一条路由映射,从而是路由系统变得简洁。

五、admin

    django amdin是django提供的一个后台管理页面,改管理页面提供完善的html和css,使得你在通过Model创建完数据库表之后,就可以对数据进行增删改查,而使用django admin 则需要以下步骤:

  • 创建后台管理员
  • 配置url
  • 注册和配置django admin后台管理页面

    1、创建后台管理员

代码语言:javascript
复制
    python manage.py createsuperuser

    2、配置后台管理url

代码语言:javascript
复制
    url(r'^admin/', include(admin.site.urls))

    3、注册和配置django admin后台管理页面

    admin.py中执行如下代码:

代码语言:javascript
复制
    from django.contrib import admin
      
    from app01 import  models
      
    admin.site.register(models.UserType)

    另外,还可通过Bootstrap给后台管理页面添加样式,让页面好看起来

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/06/30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档