项目构建和基础知识--Django播客系统(三)

本文是Django播客系统构建的第三部分,涵盖了Django的安装、数据库配置(从SQLite切换到MySQL)、应用创建及管理、模型Model的定义、用户注册和登录功能的实现、以及URL路由的配置。通过实例介绍了如何在Django中创建和管理项目,以及如何进行数据库迁移和后台管理设置。
摘要由CSDN通过智能技术生成

项目构建和基础知识–Django播客系统(三)

概述

  • Django采用MVC架构设计的开源的WEB快速开发框架。
  • 优点:
    1. 能够快速开发,自带ORM、Template、Form、Auth核心组件
    2. MVC设计模式
    3. 实用的管理后台Admin
    4. 简洁的url设计
    5. 周边插件丰富
  • 缺点:架构重、同步阻塞
  • 所有Django的设计目标就是一款大而全,便于企业快速开发项目的框架,因此企业应用较广。

安装Django

Django version Python版本
1.8 2.7,3.2 (until the end of 2016), 3.3, 3.4, 3.5
1.9,1.10 2.7,3.4,3.5
1.11(LTS) 2.7,3.4,3.5,3.6,3.7(added in 1.11.17)
2.0 3.4,3.5,3.6,3.7
2.1,2.2(LTS) 3.5,3.6,3.7
  • 目前Django长期支持版本有1.11和2.2,这是企业的选择。
    1. $ pip install django==2.2
  • 本次使用Django2.2版本,它也是长期支持版本LTS,请在虚拟环境中安装。
  • 在虚拟环境路径中,Lib/site-packeges/django/bin下游一个django-admin.py,一起从它开始。
# django-admin --version #查看当前django版本
# django-admin --help #查看使用帮助
# django-admin startproject --help #查看startproject命令帮助
(venv) D:\MyPythonUse\DjangoWeb>django-admin

Type 'django-admin help <subcommand>' for help on a specific subcommand.

Available subcommands:

[django]
    check
    compilemessages
    createcachetable
    dbshell
    diffsettings
    dumpdata
    flush
    inspectdb
    loaddata
    makemessages
    makemigrations
    migrate
    runserver
    sendtestemail
    shell
    showmigrations
    sqlflush
    sqlmigrate
    sqlsequencereset
    squashmigrations
    startapp
    startproject
    test
    testserver
  • 注意:本文若未特殊声明,所有的命令操作都在项目的根目录下

创建Django项目

  • 创建名为blog的django项目django-admin startproject djweb .

  • 上句命令就在当前项目根目录中构建了Django项目的初始文件。.点代表项目根目录。

F:\CLASSES\TPROJECTS\BLOG10 
├─ manage.py
 └─ djweb
     ├─  settings.py
     ├─  urls.py
     ├─  wsgi.py
     └─  __init__.py
  • 重要文件说明
    1. manage.py:本项目管理的命令行工具。应用创建、数据库迁移等都使用它完成
    2. dgweb/settings.py:本项目的核心配置文件。数据库、中间件、模板等
    3. dgweb/urls.py:URL路径映射配置。项目初始,只配置了/admin的路由。
    4. dgweb/wsgi:定义WSGI接口信息。部署用,一般无需改动。

数据库配置

使用数据库,需要修改默认的数据库配置。
在主项目的settings.py下DATABASES。默认使用的sqlite,修改为mysql。

DATABASES = {
   
    'default': {
   
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'gdy',
        'USER': 'gdy',
        'PASSWORD': 'gdy',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}
配置项 说明
HOST 数据库主机。缺省是空字符串,代表localhost。如果是/开头表示使用UnixSocket链接
POST 端口
USER 用户名
PASSWORD 密码
NAME 库名
OPTIONS 选项、字典类型,参考MySQL文档
  1. 数据库引擎ENGINE
  2. 内建引擎有
    • django.db.backends.postgresql
    • django.db.backends.mysql
    • django.db.backends.sqlite3
    • django.db.backends.oracle

MySQL数据库驱动

https://docs.djangoproject.com/en/1.11/ref/databases/#mysql-db-api-drivers

Django支持MySQL5.5+
Django官方推荐使用本地驱动mysqlclient 1.3.7+

  • 安装mysql驱动pip install mysqlclient
windows下可能发生安装错误 error: Microsoft Visual C++ 14.0 is required.解决方法  
1、下载Visual C++ Redistributable Packages 2015、2017安装,但是即使安装后,确实看到了V14库,也不保证 安装mysqlclient就成功  
2、直接安装编译好的wheel文件  
mysqlclient-1.3.13-cp
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值