PyCharm创建Django项目并连接mysql数据库
0. 安装Django
pip install django
1. 新建项目
注:我的Pycharm为社区版,创建项目时,File->New Project… 显示为:
注意勾选内容。
如果你的Pycharm版本为其他版本,可以直接创建Django项目,下面的内容是在社区版的基础上完成的。
1.1 创建Django项目
Pycharm社区版创建完项目,只需要执行以下步骤即可创建Django项目。
打开Terminal输入以下命令
django-admin startproject projectname
此时的目录结构:
1.2 新建项目下的App
- 到Django项目下,输入以下命令
python manage.py startapp appname
- 此时的目录结构:
1.3 创建templates文件夹
此目录下即用来存放我们的html文件。
此目录一般是与app的主目录是平级的。当然也可以建立在app的目录下,主要取决于你的模板,一般是全局使用呢,还是专门服务于某个app。
- 新建
templates
文件
- 配置templates文件路径
打开项目目录下的setting.py文件,找到TEMPLATES,如图示:
1.4 启动项目
- 输入以下命令:
python manage.py runserver
点击上图红色圈中的内容,浏览器弹出如下页面表示创建成功。
另一种启动方式,通过配置Pycharm Edit Configuration
输入runserver 8000
,8000为项目访问端口;
2. Django项目连接数据库
2.1 创建数据库
本次项目的测试数据库为mysql,使用可视化软件Navicat。
新建一个数据库,取名为testDjango。
2.2 给项目导入mysql驱动
在File->Setting->Project:testDjango->Project Interpreter下按照图示添加PyMySQL驱动;
2.3 配置数据库
- 找到工程目录下的
settings.py
文件,并打开,找到DTABASE,按照图示进行修改
即在setting.py
中添加上以下代码:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 数据库驱动
'NAME': 'testDjango', # 数据库名
'USER': 'root', # 用户名
'PASSWORD': '', # 密码,本机mysql数据库没有设置密码,故此处为空,此处应修改为自己的数据库密码
'HOST': '127.0.0.1', # 主机ip
'PORT': '3306' # 数据库端口号
}
}
2.4 项目加载数据库
- 找到工程目录下的
__init__.py
文件,并打开,添加以下代码:
import pymysql
pymysql.install_as_MySQLdb()
运行项目,此时运行项目会出现错误,按照以下步骤纠错即可完成数据库的连接;
此处错误原因是
Django
项目版本与mysql
驱动版本不匹配的问题,按照图示注释掉指定代码即可:
- 继续运行,会出现以下错误,继续按照图示修改即可:
query = query.encode(errors='replace')
- 此时再运行项目,出现图示内容即代表Django项目连接数据库成功!
2.5 创建数据库表模型
- 找到app目录下的
models.py
,并作图示内容修改:
from django.db import models
# Create your models here. User对应数据库中的表
class User(models.Model):
# 如果没有的话,默认会生成一个名称为id的列,如果要显示的自定义一个自增列
id = models.AutoField(primary_key=True)
# 类里面的字段代表数据表中的字段(username),数据类型则由CharField(相当于varchar)
username = models.CharField(max_length=100)
# 数据库表中的密码字段
password = models.CharField(max_length=100)
model.py
文件中User
类对应数据库中的数据表,属性对应表中的字段名称;
一般表的命名规则为:app名称_表名称,例如本示例中的myapp_user
向数据库中同步创建表并同步数据:
创建同步文件,在Terminal中输入以下命令:
python manage.py makemigrations
输入命令可能出现下图示提示,无法同步,
这时需要在项目目录下的setting.py
文件中的INSTALLED_APPS
中追加以下内容:
'myapp.apps.MyappConfig',
之后重新输入命令:python manage.py makemigrations
出现图示内容表示同步成功
创建表结构并同步到数据库,输入以下命令:
python manage.py migrate
打开数据库,看到数据库中新增了许多表,其中的User类生成的表(myapp_user)是你需要操作的表,其他都是框架自动生成的表。
创建表结构并同步到数据库,输入以下命令:
python manage.py migrate
打开数据库,看到数据库中新增了许多表,其中的User类生成的表(myapp_user)是你需要操作的表,其他都是框架自动生成的表。
PyCharm创建Django项目并连接mysql数据库的更多相关文章
- Pycharm创建Django项目并访问Django
Pycharm创建Django项目并访问Django 一.Django插件 如果没有Django插件,需要先安装Django插件. 1,首先点击Default Settings,打开设置页面: 2,打 ...
- 第三百零三节,Django框架介绍——用pycharm创建Django项目
Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内 ...
- 一 Django框架介绍——用pycharm创建Django项目
Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内 ...
- 使用Pycharm创建Django项目无法创建app.
Python3.7使用Django1.11.7创建Django项目报以下错误时: 在使用Pycharm创建Django项目报以下错误时: Traceback (most recent call las ...
- django新建项目,连接mysql数据库
安装django,进入Django目录,运行 python setup.py install 在workplace目录下新建一个名为site01的项目: cd workplacedjango-admi ...
- Django学习:连接Mysql数据库
开发环境: Windows 10 Python 3.7.4 Django 2.2.6 Mysql 8.0.17 承接上一节:https://www.cnblogs.com/daydayupup/p/1 ...
- Python——Pycharm创建Django项目
一.Django的官网 地址:https://www.djangoproject.com/download/ 注:LTS表示一直在维护的版本,建议是带LTS的版本 二.Pycharm下载Django ...
- 学以致用三十-----pycharm创建django项目忘记添加app
记忆力有时候真的不是很好.因此有些操作步骤还是记录下来好了. pycharm版本-----2018.2.4 创建django项目 file-----newproject----- 创建的时候,appl ...
- 使用pycharm创建Django项目,'django-admin' 不是内部或外部命令
报错信息如下: (笔者的电脑为win10,python3.7,django 2.2.6 ) 第一种情况的解决方案:没有配置环境变量,Django安装之后,需要配置环境变量,命令django-admin ...
随机推荐
- Linux 和 Windows多线程函数对应表
Linux Pthread API Windows SDK 库对应 API 创建 pthread_create CreateThread 退出 pthread_exit ThreadExit 等待 p ...
- 考研辅助app的诞生!
背景: 去年下半年由于种种因素驱动下,准备去考研,在之前同事的推荐下,参加了考研培训班,培训班发了纸质书籍和线上视频观看账号,由于线上视频需要全程联网才能观看,突发奇想,要是我把这些视频下载下来,没网 ...
- ios-tableview加载卡顿的解决方案
参考文章:http://www.cocoachina.com/articles/11968 总结: 提前计算并缓存好高度(布局),因为heightForRowAtIndexPath:是调用最频繁的方法 ...
- SQL中的视图(极客时间)
视图 视图也就是虚拟表, 本身不具备数据, 是SQL中的一个变红要概念. 如图 视图可以帮助我们使用表的一部分, 而不是所有的表, 另一方面可以针对不同的用户制定不同的查询视图. 创建, 更新与删除视 ...
- liteos双向链表(十二)
1. 概述 1.1 基本概念 双向链表是指含有往前和往后两个方向的链表,即每个结点中除存放下一个节点指针外,还增加一个指向其前一个节点的指针.其头指针head是唯一确定的. 从双向链表中的任意一个结点 ...
- ZAP 代理 Chrome 系统 win10
ZAP 代理原理 如下浏览器,拿Chrome为例,Chrome发出的请求都会先经过 ZAP, 然后再由 ZAP 发往服务器.如下图: Chrome 设置 1. Chrome设置只需要在地址栏输入 ch ...
- BERT安装与使用
环境: python 3.5 tensorflow 1.12.1 bert-serving-server 1.9.1 bert-serving-cline 1.9.1 官网上说要保证Python &g ...
- Spring(005)-多环境Profile
多个环境下的配置应该怎么进行,比如数据库连接字符,多个环境不同,spring的方案,大概总结如下. 例子,数据库配置. 定义一个获取数据库链接的接口 public interface DataConn ...
- VC 静态库与动态库(三)动态库创建与使用_隐式链接
动态库分为二种,一种隐式链接,另一种显示调用.不论哪种动态库,本质都是运行时动态加载 隐式链接:程序运行时,由编译系统自动加载动态库,然后根据程序的引入表进行重定位,当程序退出时自动卸载动态库 显示调 ...
- 【Sqlite】C#不同支持
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> ...