一、安装Django

# 在CMD中运行
pip install django
# 查看djangp版本
python manage.py version

二、创建项目

# 在CMD中运行
django-admin startproject test1 # test1为项目名称

  • 外部test1/根目录是项目的容器。它的名称对Django无关紧要;您可以将其重命名为任何喜欢的名称。
  • manage.py:一个命令行实用程序,可让您以各种方式与该Django项目进行交互。您可以manage.pydjango-admin和manage.py中阅读有关的所有详细信息 。
  • 内部test1/目录是项目的实际Python包。它的名称是Python包名称,您需要使用它来导入其中的任何内容(例如test1.urls)。
  • test1/__init__.py:一个空文件,告诉Python该目录应视为Python软件包。如果您是Python初学者,请在Python官方文档中阅读有关包的更多信息
  • test1/settings.py:此Django项目的设置/配置。 Django设置将告诉您所有设置的工作方式。
  • test1/urls.py:此Django项目的URL声明;Django支持的网站的“目录”。您可以在URL调度程序中阅读有关URL的更多信息。
  • test1/asgi.py:与ASGI兼容的Web服务器为您的项目提供服务的入口点。有关更多详细信息,请参见如何使用ASGI进行部署
  • test1/wsgi.py:兼容WSGI的Web服务器为您的项目提供服务的入口点。有关更多详细信息,请参见如何使用WSGI进行部署

三、创建应用

# 在CMD中运行
cd test1
python manage.py startapp booktest  # booktest为应用名称

  • _init.py_是一个空文件,表示当前目录booktest可以当作一个python包使用。
  • tests.py文件用于开发测试用例,在实际开发中会有专门的测试人员,这个事情不需要我们来做。
  • models.py文件管理数据库操作相关。
  • views.py文件接收浏览器请求,进行处理,返回页面相关。
  • admin.py文件与网站的后台管理相关。
  • migrations文件夹管理生成的迁移文件。

四、注册应用

应用创建成功后,需要注册才可以使用,也就是建立应用和项目之间的关联,在test1/settings.py中INSTALLED_APPS下添加应用的名称就可以完成注册。

五、使用mysql数据库

Django默认使用的sqlite3,使用mysql数据库需要修改./test1/settings.py文件中的DATABASES参数

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 使用mysql数据库
'NAME': 'book', # 数据库的名称
'USER': 'root', # 账户
'PASSWORD': '123456', # 密码
'HOST': '192.168.0.58', # 数据库ip
'PORT': '3306', # 端口
}
}

修改后还需要在./test1/settings.py文件中导入pymysql才可以

import pymysql
pymysql.version_info = (1, 4, 0, 'final', 0) # 指定版本
pymysql.install_as_MySQLdb()

遇见的问题

1、运行时报错:django.core.exceptions.ImproperlyConfigured: mysqlclient 1.4.0 or newer is required; you have 0.10.1,原因是没有指定版本

2、 运行时报错:pymysql.err.OperationalError: (1049, "Unknown database 'book'") ,原因是没有创建book数据库。注:数据库需要手动创建

六、视图

打开文件test1/views.py ,并将以下Python代码放入其中:

from django.http import HttpResponse

def index(request):
return HttpResponse("Hello, world!")

上面是一个最简单的视图,要想访问该视图,我们需要为视图配置路由。

配置方法是在应用booktest中创建名为urls.py的文件,并将以下Python代码放入其中:

from django.urls import path

from booktest import views

urlpatterns = [
path('index', views.index) # index可以为空白
]

上面只是配置好了应用的url配置,还需要在项目中进行url配置。

urlpatterns = [
path('admin/', admin.site.urls),
path('booktest/', include('booktest.urls')), # booktest/ 可以为空白
]

七、开发服务器

验证Django项目是否有效

# 在CMD中运行
python manage.py runserver 8989 # 8989为指定运行的端口,可省略,默认8000

访问开发服务器

当路由均为空白时

Django_环境配置(一)的更多相关文章

  1. uboot环境配置

    uboot环境配置 通过配置uboot让它在启动过程中从tftp获取内核和设备树,并从在加载内核之后把通过启动参数将"从nfs挂载根文件系统"传入内核.这个配置主要是通过uboot ...

  2. 史上最全Windows版本搭建安装React Native环境配置

    史上最全Windows版本搭建安装React Native环境配置 配置过React Native 环境的都知道,在Windows React Native环境配置有很多坑要跳,为了帮助新手快速无误的 ...

  3. Electron的环境配置

    原文地址http://huisky.com/blog/161218121551123 本文介绍了Electron的环境配置,包括Electron下载.nodejs下载安装.NPM+Bower安装配置. ...

  4. Python开发环境配置

    好久没有写博客了,自从6月份毕业后,进入一家做书法.字画文化宣传的互联网公司(www.manyiaby.com),这段时间一直在进行前端开发,对于后端的使用很少了,整天都是什么html.css.jav ...

  5. PHP_环境配置_python脚本_2017

    Apache配置 需要安装:VC2015 httpd-2.4.16-win32-VC14.zip VC14就是2015的环境. 又比如:php-5.6.12-Win32-VC11-x86 VC11就是 ...

  6. PHP环境配置

    PHP环境配置 1.Apache的安装 第一步: 1.    双击httpd-2.2.17-win32-x86-no_ssl.msi.出现 Windows 标准的软件安装欢迎界面,直接点“Next”继 ...

  7. Visual studio 通用开发环境配置:SDL,FFMPEG为例

    引言 每一个C++库的使用都是从开发环境的配置开始的,其实每个库的配置过程都是大同小异,总结下来有下面几个步骤: 下载库文件,这里假定是已经预先编译完成的. 配置库文件的包含目录(include)和库 ...

  8. windows 7下React Native环境配置

    React Native 是 Facebook 推出的一个用 Java 语言就能同时编写 ios,android,以及后台的一项技术,它可以做到实时热更新 .FaceBook 也号称这们技术是 “Le ...

  9. seL4环境配置

      转载声明:希望大家能够从这里收获知识之外,也能够体会到博主撰写博客的辛苦.个人博客势单力薄,对于强转甚至转载博客访问量高于原文的例子不在少数. 希望能够得到大家关注的同时,也能够稍微体谅一下博主的 ...

随机推荐

  1. JS - 事件常用

    问:什么是事件? 答:JS创建动态页面,可以被JS侦测到的行为.网页中的每个元素都可以产生某些可以触发JS函数的事件.比如说,当用户点击按钮时,就发生一个鼠标单击(onclick)事件,需要浏览器做出 ...

  2. 【简】题解 P4297 [NOI2006]网络收费

    传送门:P4297 [NOI2006]网络收费 题目大意: 给定一棵满二叉树,每个叶节点有一个状态(0,1),任选两个叶节点,如果这两个叶节点状态相同但他们的LCA所管辖的子树中的与他们状态相同的叶节 ...

  3. 论文翻译:2021_A Perceptually Motivated Approach for Low-complexity, Real-time Enhancement of Fullband Speech

    论文地址:一种低复杂度实时增强全频带语音的感知激励方法 论文代码 引用格式:A Perceptually Motivated Approach for Low-complexity, Real-tim ...

  4. 4个优化方法,让你能了解join计算过程更透彻

    摘要:现如今, 跨源计算的场景越来越多, 数据计算不再单纯局限于单方,而可能来自不同的数据合作方进行联合计算. 本文分享自华为云社区<如何高可靠.高性能地优化join计算过程?4个优化让你掌握其 ...

  5. shell脚本 awk实现实时监控网卡流量

    一.简介 通过第3方工具获得网卡流量,这个大家一定很清楚.其实通过脚本一样可以实现效果.下面是我个人工作中整理的数据.以下是shell脚本统计网卡流量. 现原理: cat /proc/net/dev ...

  6. 项目集成seata和mybatis-plus冲突问题解决方案:(分页插件失效, 自动填充失效, 自己注入的id生成器失效 找不到mapper文件解决方案)

    项目集成seata和mybatis-plus,seata与mybatis-plus冲突问题(所有插件失效,自动填充失效,找不到mapper文件解决方案) 自动填充代码: package com.fro ...

  7. JavaWeb的三大作用域

    三大作用域描述 名称 类型 描述 request HttpServletRequest 将数据放在请求作用域中,在一次请求中实现数据的共享,比如请求转发 session HttpSession 将数据 ...

  8. [BUUCTF]REVERSE——[BJDCTF2020]JustRE

    [BJDCTF2020]JustRE 附件 步骤: 例行查壳儿,无壳儿,32位程序 32位ida载入,main函数没看懂,shift+f12检索了一下程序里的字符串,发现了一个类似于flag的字符串 ...

  9. JAVA日记之mybatis-3一对一,一对多,多对多xml与注解配置

    1.Mybatis多表查询1.1 一对一查询1.1.1 一对一查询的模型用户表和订单表的关系为,一个用户有多个订单,一个订单只从属于一个用户 一对一查询的需求:查询一个订单,与此同时查询出该订单所属的 ...

  10. Google Earth Engine 中的位运算

    Google Earth Engine中的位运算 按位运算是编程中一个难点,同时也是在我们后续处理影像数据,尤其要使用影像自带的波段比如QA波段经常会用到的一个东西.通过按位运算我们可以筛选出我们想要 ...