学点简单的Django之第一个Django程序的实现


Posted in Python onFebruary 24, 2021

这里采用PyCharm专业版可以直接创建Django项目,这里面自动部署了Django的基本环境。在创建项目时选择Django项目:

学点简单的Django之第一个Django程序的实现

第一次建立Django项目时可能需要一段时间去等待下载相关的依赖环境。
我们可以在Terminal中输入python -m django --version来查看当前的Django版本,或者也可以在PyCharm的系统偏好设置中查看相关版本信息。

学点简单的Django之第一个Django程序的实现

建立完成后自动生成了如下的一些文件。

学点简单的Django之第一个Django程序的实现

不知道是环境问题还是什么问题,Django3.1.4的新建项目直接运行会报错NameError: name 'os' is not defined这里我们要修改settings.py文件,在文件中引入os库。
如果不知道如何引入的同学,这里贴了引入后settings.py文件的所有内容。

"""
Django settings for DjangoDemo2 project.

Generated by 'django-admin startproject' using Django 3.1.5.

For more information on this file, see
https://docs.djangoproject.com/en/3.1/topics/settings/

For the full list of settings and their values, see
https://docs.djangoproject.com/en/3.1/ref/settings/
"""

from pathlib import Path
import os

# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent


# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/3.1/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = '*z4n3290$mge9mbn04a5+hbdk@@!2y_z$05b_@(^c=ss98+=%&'

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = []


# Application definition

INSTALLED_APPS = [
  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',
]

MIDDLEWARE = [
  'django.middleware.security.SecurityMiddleware',
  'django.contrib.sessions.middleware.SessionMiddleware',
  'django.middleware.common.CommonMiddleware',
  'django.middleware.csrf.CsrfViewMiddleware',
  'django.contrib.auth.middleware.AuthenticationMiddleware',
  'django.contrib.messages.middleware.MessageMiddleware',
  'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

ROOT_URLCONF = 'DjangoDemo2.urls'

TEMPLATES = [
  {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [os.path.join(BASE_DIR, 'templates')]
    ,
    'APP_DIRS': True,
    'OPTIONS': {
      'context_processors': [
        'django.template.context_processors.debug',
        'django.template.context_processors.request',
        'django.contrib.auth.context_processors.auth',
        'django.contrib.messages.context_processors.messages',
      ],
    },
  },
]

WSGI_APPLICATION = 'DjangoDemo2.wsgi.application'


# Database
# https://docs.djangoproject.com/en/3.1/ref/settings/#databases

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.sqlite3',
    'NAME': BASE_DIR / 'db.sqlite3',
  }
}


# Password validation
# https://docs.djangoproject.com/en/3.1/ref/settings/#auth-password-validators

AUTH_PASSWORD_VALIDATORS = [
  {
    'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
  },
  {
    'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
  },
  {
    'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
  },
  {
    'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
  },
]


# Internationalization
# https://docs.djangoproject.com/en/3.1/topics/i18n/

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True


# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/3.1/howto/static-files/

STATIC_URL = '/static/'

在修改之后我们再次点击运行即可顺利运行,没有BUG了。

学点简单的Django之第一个Django程序的实现

此时我们打开http://127.0.0.1:8000/时出现的是下面的页面,则说明我们第一个Django项目成功的跑起来了。

学点简单的Django之第一个Django程序的实现

下面我们在介绍一下初始生成的几个文件各有什么样的作用,Django自动生成的文件为:

DjangoDemo2/
  manage.py
  DjangoDemo2/
    __init__.py
    settings.py
    urls.py
    asgi.py
    wsgi.py
	templates/

这些文件的含义及用处为:

  • 最外层DjangoDemo2文件夹内存放了DjangoDemo2项目的所有文件
  • DjangoDemo2/manage.py文件存放了管理Django项目的命令行工具。
  • DjangoDemo2/DjangoDemo2/文件夹内存放的是项目内的py代码,是一个Python包。
  • DjangoDemo2/DjangoDemo2/init.py文件是声明当前为文件夹是一个Python包
  • DjangoDemo2/DjangoDemo2/settings.py文件是Django的配置文件
  • DjangoDemo2/DjangoDemo2/urls.py文件是Django项目的路由声明
  • DjangoDemo2/DjangoDemo2/asgi.py文件是运行在ASGI的Web服务器上的入口,这是Django3之后的新特性。
  • DjangoDemo2/DjangoDemo2/wsgi.py文件是运行在WSGI的Web服务器上的入口。

到此这篇关于学点简单的Django之第一个Django程序的实现的文章就介绍到这了,更多相关第一个Django程序的实现内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中使用异常处理来判断运行的操作系统平台方法
Jan 22 Python
一篇文章入门Python生态系统(Python新手入门指导)
Dec 11 Python
轻松掌握python设计模式之访问者模式
Nov 18 Python
一个基于flask的web应用诞生(1)
Apr 11 Python
python中实现数组和列表读取一列的方法
Apr 03 Python
Python简单计算文件MD5值的方法示例
Apr 11 Python
Python测试网络连通性示例【基于ping】
Aug 03 Python
Python中logging实例讲解
Jan 17 Python
linux查找当前python解释器的位置方法
Feb 20 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
Jun 02 Python
django模型类中,null=True,blank=True用法说明
Jul 09 Python
python opencv实现图像配准与比较
Feb 09 Python
python单例模式的应用场景实例讲解
Feb 24 #Python
python编写扎金花小程序的实例代码
Feb 23 #Python
Python项目实战之使用Django框架实现支付宝付款功能
Feb 23 #Python
Python接口自动化系列之unittest结合ddt的使用教程详解
Feb 23 #Python
python利用opencv实现颜色检测
Feb 23 #Python
详解Python中openpyxl模块基本用法
Feb 23 #Python
python爬虫今日热榜数据到txt文件的源码
Feb 23 #Python
You might like
PHP 和 HTML
2006/10/09 PHP
PHP内置的Math函数效率测试
2014/12/01 PHP
一款简单实用的php操作mysql数据库类
2014/12/08 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
2016/05/31 PHP
Laravel 解决419错误 -ajax请求错误的问题(CSRF验证)
2019/10/25 PHP
IE与Firefox在JavaScript上的7个不同写法小结
2009/09/14 Javascript
javascript 基础篇1 什么是js 建立第一个js程序
2012/03/14 Javascript
A标签中通过href和onclick传递的this对象实现思路
2013/04/19 Javascript
jQuery给多个不同元素添加class样式的方法
2015/03/26 Javascript
JavaScript中 ES6 generator数据类型详解
2016/08/11 Javascript
Bootstrap模态框禁用空白处点击关闭
2016/10/20 Javascript
jQuery无刷新上传之uploadify简单代码
2017/01/17 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
2017/12/16 Javascript
解决vue点击控制单个样式的问题
2018/09/05 Javascript
详解vue数组遍历方法forEach和map的原理解析和实际应用
2018/11/15 Javascript
JS操作字符串转数字的常见方法示例
2019/10/29 Javascript
[52:27]2018DOTA2亚洲邀请赛 3.31 小组赛B组 paiN vs Secret
2018/04/01 DOTA
[01:30]我们共输赢 完美世界城市挑战赛开启全新赛季
2019/04/19 DOTA
使用wxpython实现的一个简单图片浏览器实例
2014/07/10 Python
编程语言Python的发展史
2014/09/26 Python
用map函数来完成Python并行任务的简单示例
2015/04/02 Python
python 调用HBase的简单实例
2016/12/18 Python
Windows 安装 Anaconda3+PyCharm的方法步骤
2019/06/13 Python
python实现抠图给证件照换背景源码
2019/08/20 Python
python实现3D地图可视化
2020/03/25 Python
python 实现端口扫描工具
2020/12/18 Python
CSS3 网页下拉菜单代码解释 中文翻译
2010/02/27 HTML / CSS
HTML5的表单(绝对特别强大的功能)使用示例
2013/06/20 HTML / CSS
个人近期表现材料
2014/02/11 职场文书
政法学院毕业生求职信
2014/02/28 职场文书
管理建议书范文
2014/05/13 职场文书
四风问题查摆剖析材料
2014/10/11 职场文书
幼儿园班级工作总结2015
2015/05/25 职场文书
2015年秋季运动会前导词
2015/07/20 职场文书
爱国主题班会教案
2015/08/14 职场文书
Python 数据可视化神器Pyecharts绘制图像练习
2022/02/28 Python