浅谈Python之Django

目录
  • 工具版本
  • 创建工程djangostart
  • 创建项目message
  • 创建一些辅助目录
  • 连接数据库(保证自己的数据库已启动)
  • 生成数据表
  • 总结

工具版本

python版本:3.8
django版本:2.0.0
mysql版本: 5.5.53
pip3

创建工程djangostart

Django-admin startproject djangostart

创建项目message

从day17目录下执行命令
cd djangostart
Django-admin startapp message

创建一些辅助目录

创建log目录 – 记录日志的目录
创建media目录 --上传的文件
创建static目录 – 放css、image、js文件
创建templates目录 – 放静态文件

连接数据库(保证自己的数据库已启动)

进入setting.py文件,修改DATABASES

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', # mysql类型
        'NAME': 'testdjango', #数据库名称
        'USER': 'root', # 账号
        'PASSWORD': 'root', # 密码
        'HOST': '127.0.0.1' # host
    }
}

重新运行python manage.py runserver 0.0.0.0:8888,出现错误No module named ‘MySQLdb'

pip3 install mysqlclient

python manage.py runserver 0.0.0.0:8888,成功

生成数据表

python manage.py makemigrations
python manage.py migrate

原因是:django版本跟数据库版本不对应,Django2.1不再支持MySQL5.5,必须5.6版本以上

phpStudy查看当前使用的MySQL的版本
1、打开面板
2、其他选项菜单
3、MySQL工具
4、MySQL命令行
5、运行select version();命令
django版本查看
import django
django.version

解决办法:

二选一

(1)Django降级到2.0(我选择的是这种)

pip3 install Django==2.0.0 -i https://pypi.douban.com/simple

(2)MySQL升级

参考:http://www.cnblogs.com/yebaofang/p/9863678.html

访问form.html

在message目录下的views.py文件中定义视图函数get_form

def getform(request):
    return render(request,'message_form.html')

在djangostart目录下的urls.py文件中定义路由

from django.contrib import admin
from django.urls import path
from django.conf.urls import url
from message import views as message_views
urlpatterns = [
    path(r'^admin/', admin.site.urls),
    url(r'^form/$',message_views.getform)
]

在templates目录下创建message_form.html文件

重启服务器:python manage.py runserver 0.0.0.0:8888
访问127.0.0.0:8888/form/ (自己的端口号)

修改djangostart目录下的setting.py文件中的TEMPLATES中的DIR

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [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',
            ],
        },
    },
]

在setting.py文件中修改static目录,这样才能正确 的引入css、js、img等文件

STATICFILES_DIRS = [
    os.path.join(BASE_DIR,'static')
]

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • Python Django获取URL中的数据详解

    目录 Django获取URL中的数据 URL路径参数 使用path函数 使用re_path函数 URL关键字形式 总结 Django获取URL中的数据 URL中的参数一般有两种形式.如下所示: 1. https://zy010101.blog.csdn.net/article/details/120816954 2. https://so.csdn.net/so/search?q=Django&t=blog&u=zy010101 我们将第一种形式称为"URL路径参数":

  • 浅谈Python之Django(二)

    目录 django设计 数据表生成与修改各APP models设计 users models 设计 course models 设计 organization models 设计 operation models 设计 总结 django设计 user-用户管理 curser-课程管理 organization-机构和教师管理 数据表生成与修改各APP models设计 users models 设计 修改users目录下的models # _*_ encoding:utf-8 _*_ from

  • python Django的显示个人信息详解

    目录 用命令创建Django项目 1.将磁盘切换为D盘 2.在D盘的路径下创建Django项目 3.最后显示新建index文件夹 启动项目 1.输入以下命令启动项目 2.在浏览器中输入http://127.0.0.1:8001/,就可以看到运行结果 3.数据迁移 4.添加app 5.添加index的路径 6.新建一个urls.py文件 7.编写一个视图返回函数 8.在新建的urls文件:里面写入一下代码 9.最后显示结果 10.新建一个templates文件存放welcome.html 11.编

  • Android banner详解用法案例

    Android----banner使用详解 昨天10.31 ,斗破苍穹的三年之约终于出来了,自己也等了很久很久,敬师长,敬家人,敬朋友,敬每一个前行路上正在奋战的自己,星光不问赶路人,时间不负有心人. 效果图: 添加依赖 implementation 'com.youth.banner:banner:2.1.0' 添加权限到你的 AndroidManifest.xml <!-- if you want to load images from the internet --> <uses-

  • Python Django请求和响应对象详解

    目录 Django请求和响应对象 HttpRequest对象 HttpRequest常用属性 中间件设置的属性 QueryDict对象 QueryDict方法 HttpResponse对象 HttpResponse对象用法 HttpResponse对象属性 HttpResponse对象方法 HttpResponse子类 JsonResponse对象 总结 Django请求和响应对象 Django 使用请求和响应对象在系统中传递状态. 当一个页面被请求时,Django 会创建一个 HttpRequ

  • Python Django模型详解

    目录 Django模型 字段类型 字段类型的参数 外键 总结 Django模型 Django的模型定义在models.py文件中.模型是MVT中的M,也相当于MVC中的M. 在Django中,模型必须继承自Model类.例如: from django.db import models # Create your models here. class BookInfo(models.Model): # 一个模型类就会对应生成数据库中的一张表 """书籍模型""

  • 浅谈Python之Django(三)

    目录 django-admin基本介绍 激活django-admin 创建访问django-admin的超级用户 访问django-admin 修改django-admin为中文 修改django-admin为中国时区 后台放出users可以对用户信息进行修改 总结 django-admin基本介绍 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 配置文件settings.py 中的INSTALLED_APPS

  • 浅谈Python之Django(四)

    目录 1.pip3 install xadmin 2.解决方案 3. 修改配置文件setting.py中的INSTALLED_APPS 4.修改urls中的路由 5.访问 6.设置显示的字段与搜索的字段 7.__str __ 8.全局配置 总结 1.pip3 install xadmin 因为我是django2.0,直接使用命令一直报错,如下图 2.解决方案 下载xadmin源包 下载地址:https://github.com/Zjvngvn/xadmin pip3 install 源码的地址(

  • 浅谈Python之Django

    目录 工具版本 创建工程djangostart 创建项目message 创建一些辅助目录 连接数据库(保证自己的数据库已启动) 生成数据表 总结 工具版本 python版本:3.8 django版本:2.0.0 mysql版本: 5.5.53 pip3 创建工程djangostart Django-admin startproject djangostart 创建项目message 从day17目录下执行命令 cd djangostart Django-admin startapp messag

  • 浅谈Python的Django框架中的缓存控制

    关于缓存剩下的问题是数据的隐私性以及在级联缓存中数据应该在何处储存的问题. 通常用户将会面对两种缓存: 他或她自己的浏览器缓存(私有缓存)以及他或她的提供者缓存(公共缓存). 公共缓存由多个用户使用,而受其他某人的控制. 这就产生了你不想遇到的敏感数据的问题,比如说你的银行账号被存储在公众缓存中. 因此,Web 应用程序需要以某种方式告诉缓存那些数据是私有的,哪些是公共的. 解决方案是标示出某个页面缓存应当是私有的. 要在 Django 中完成此项工作,可使用 cache_control 视图修

  • 浅谈python脚本设置运行参数的方法

    正在学习Django框架,在运行manage.py的时候需要给它设置要监听的端口,就是给这个脚本一个运行参数.教学视频中,是在Eclipse中设置的运行参数,网上Django大部分都是在命令行中运行manage.py时添加参数,没有涉及到如何在pycharm中设置运行参数.以下是两种设置运行参数的方法(以manage.py为例),不设置运行参数时,运行结果为 D:\Python2.7\python.exe "D:/Django project/DjangoProject1/manage.py&q

  • 浅谈Python中的继承

    继承 Python 中所有的类都是object类的子类,而object 继承自type 继承分为 接口继承和实现继承 接口继承:使用父类的接口名,子类重写这个方法.尽可能的继承接口类,在子类中实现方法,鼓励对接口类的多继承,这样遵循接口隔离原则,有利于归一化设计,不提倡对抽象类进行多继承 实现继承:子类不需要实现任何东西,直接使用父类接口和实现会增强代码的耦合性,不推荐使用. 一些细节 类继承最终要被实例化,我们多数时候使用的还是对象而不是类.因此我们还是来一点点看继- 继承的过程 承仅仅是一种

  • 浅谈Python项目的服务器部署

    关于Web服务器和应用服务器 基本概念: Web服务器主要功能就是存储.处理.传递网页,客户端和服务器之间基于HTTP协议进行通信. 应用服务器主要是处理动态请求,调用相应的对象完成对请求的处理,返回响应的结果. 两者之间的区别: Web服务器主要是以HTTP为核心,WEB UI为向导的应用,处理一些静态请求. 应用服务器虽然也支持HTTP协议,但应用服务器可以通过很多协议为应用程序提供商业逻辑. Python项目部署架构 在我们平时搭建一个Python Web项目时,比如Django框架的项目

  • 浅谈Python flask框架

    目录 1. flask 框架概述 1.1flask 框架优势 1.2flask 框架获取 1.3flask 框架使用 2. flask demo步骤 3. flask 基础功能 3.1路由功能 3.2模版提供 4.总结  前言: Python 面向对象的高级编程语言,以其语法简单.免费开源.免编译扩展性高,同时也可以嵌入到C/C++程序和丰富的第三方库,Python运用到大数据分析.人工智能.web后端等应用场景上. Python 目前主要流行的web框架:flask.Django.Tornad

  • 浅谈python中copy和deepcopy中的区别

    在下是个编程爱好者,最近将魔爪伸向了Python编程.....遇到copy和deepcopy感到很困惑,现在针对这两个方法进行区分,一种是浅复制(copy),一种是深度复制(deepcopy). 首先说一下deepcopy,所谓的深度复制,在这里我理解的是完全复制然后变成一个新的对象,复制的对象和被复制的对象没有任何关系,彼此之间无论怎么改变都相互不影响. 然后说一下copy,在这里我分为两类来说,一种是字典数据类型的copy函数,一种是copy包的copy函数. 一.字典数据类型的copy函数

随机推荐