配置数据库

it2022-05-28  75

配置数据库

1.安装pymysql

(Django_login) D:\demo\Django_login>pip install pymysql Collecting pymysql Using cached https://files.pythonhosted.org/packages/a7/7d/682c4a7da195a678047c8f1c51bb7682aaedee1dca7547883c3993ca9282/PyMySQL-0.9.2-py2.p y3-none-any.whl Collecting cryptography (from pymysql) Using cached https://files.pythonhosted.org/packages/f1/01/a144ec664d3f9ae5837bd72c4d11bdd2d8d403318898e4092457e8af9272/cryptography-2.3.1- cp36-cp36m-win_amd64.whl Collecting idna>=2.1 (from cryptography->pymysql) Using cached https://files.pythonhosted.org/packages/4b/2a/0276479a4b3caeb8a8c1af2f8e4355746a97fab05a372e4a2c6a6b876165/idna-2.7-py2.py3-no ne-any.whl Requirement already satisfied: six>=1.4.1 in e:\venv\django_login\lib\site-packages (from cryptography->pymysql) (1.11.0) Collecting asn1crypto>=0.21.0 (from cryptography->pymysql) Using cached https://files.pythonhosted.org/packages/ea/cd/35485615f45f30a510576f1a56d1e0a7ad7bd8ab5ed7cdc600ef7cd06222/asn1crypto-0.24.0-p y2.py3-none-any.whl Collecting cffi!=1.11.3,>=1.7 (from cryptography->pymysql) Using cached https://files.pythonhosted.org/packages/2f/85/a9184548ad4261916d08a50d9e272bf6f93c54f3735878fbfc9335efd94b/cffi-1.11.5-cp36-cp 36m-win_amd64.whl Collecting pycparser (from cffi!=1.11.3,>=1.7->cryptography->pymysql) Using cached https://files.pythonhosted.org/packages/68/9e/49196946aee219aead1290e00d1e7fdeab8567783e83e1b9ab5585e6206a/pycparser-2.19.tar. gz Installing collected packages: idna, asn1crypto, pycparser, cffi, cryptography, pymysql Running setup.py install for pycparser ... done Successfully installed asn1crypto-0.24.0 cffi-1.11.5 cryptography-2.3.1 idna-2.7 pycparser-2.19 pymysql-0.9.2

2.初始化pymysql

import pymysql pymysql.install_as_MySQLdb()

3.创建数据库

mysql> CREATE DATABASE IF NOT EXISTS demo_login DEFAULT CHARSET utf8 COLLATE utf8_general_ci; Query OK, 1 row affected (0.01 sec)

4.配置数据库连接信息

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'demo_login', 'USER':'root', 'PASSWORD':'root', } }

5.设计数据库模型

from django.db import models # Create your models here. class User(models.Model): gender=( ('mal',"男"), ('female',"女") ) name=models.CharField(max_length=64,unique=True) password=models.CharField(max_length=512) email=models.EmailField(unique=True) date=models.DateTimeField() sex=models.CharField(max_length=2,choices=gender,default='男') #choices用于页面上的选择框标签,需要先提供一个二维的二元元组,第一个元素表示存在数据库内真实的值,第二个表示页面上显示的具体内容 def __str__(self): return self.name #这个是用于管理后台查看用户信息的,没有就会使用user_object显示 class Meta: db_table='t_user' #自定义创建的表名 verbose_name='用户' #管理后台显示的模型名称 verbose_name_plural='用户' #verbose_name的复数形式

6.创建表记录和表

(Django_login) D:\demo\Django_login>python manage.py makemigrations Migrations for 'app_login': app_login\migrations\0001_initial.py - Create model User (Django_login) D:\demo\Django_login>python manage.py migrate Operations to perform: Apply all migrations: admin, app_login, auth, contenttypes, sessions, xadmin Running migrations: Applying contenttypes.0001_initial... OK Applying auth.0001_initial... OK Applying admin.0001_initial... OK Applying admin.0002_logentry_remove_auto_add... OK Applying app_login.0001_initial... OK Applying contenttypes.0002_remove_content_type_name... OK Applying auth.0002_alter_permission_name_max_length... OK Applying auth.0003_alter_user_email_max_length... OK Applying auth.0004_alter_user_username_opts... OK Applying auth.0005_alter_user_last_login_null... OK Applying auth.0006_require_contenttypes_0002... OK Applying auth.0007_alter_validators_add_error_messages... OK Applying auth.0008_alter_user_username_max_length... OK Applying sessions.0001_initial... OK Applying xadmin.0001_initial... OK Applying xadmin.0002_log... OK Applying xadmin.0003_auto_20160715_0100... OK

7.连接数据库

8.查看表

转载于:https://www.cnblogs.com/endmoon/p/9744725.html


最新回复(0)