目录
练习完成一个有登录注册功能的Django项目,本文记录练习过程、相关知识点。
1.创建
新建项目:Django_login,新建app:mine_login,并注册app
创建详见Djongo学习笔记——pycharm创建Django服务、app及相关知识点
2.配置Mysql
(1)连接数据库驱动
找到settings.py中的DATABASES如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
ENGINE表示要连接的数据库驱动:
django.db.backends.sqlite3 连接 sqlite3
django.db.backends.postgresql 连接 PostgreSQL
django.db.backends.mysql 连接 mysql
django.db.backends.sqlite3 连接 sqlite
django.db.backends.oracle 连接 oracle
修改如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', #数据库连接
'NAME': 'user_msg',#数据库名称
'USER': 'root', #登录账号
'PASSWORD': '123456', #登录密码
'HOST': '127.0.0.1', #服务器地址
'PORT': '3306', #端口
}
}
(2)创建表格
本练习创建用户信息表,包括用户名,登录密码。在app下的models.py输入以下代码:
from django.db import models
class login_msg(models.Model):
user = models.CharField(max_length=30) #用户名
userpw = models.CharField(max_length=128) #用户密码
如果没有定义主键没关系,会在生成时自动添加,并且值为自动增加。
注意:红框中该句记得注释,不然会弹出登录弹窗(没研究是什么弹窗,类似远程连接)
(3)创建迁移文件并同步到数据库
python manage.py makemigrations
python manage.py migrate
(base) D:\YYL\Mine\Study\Django_login>python manage.py makemigrations
Migrations for 'mine_login':
mine_login\migrations\0001_initial.py
- Create model login_msg
(base) D:\YYL\Mine\Study\Django_login>python manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, mine_login, sessions
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 admin.0003_logentry_add_action_flag_choices... 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 auth.0009_alter_user_last_name_max_length... OK
Applying auth