Django写一个登录注册---001创建项目以及设计数据库

本文指导如何使用PyCharm创建Django项目,实现登录注册功能,包括models的设计、数据库迁移及admin后台管理。涉及MVT模式和基础设置调整。

Djanog开发小项目实践,众所周知,一个产品往往需要登录注册这些功能,所以我这里实现一下登录注册的开发。
使用pycharm(专业版)创建一个django项目,不是专业版看不到创建django的字样哦。这边注意一下你是使用什么环境下的python解释器,我没有使用python的虚拟环境,这个需要注意一下哈。
在这里插入图片描述
创建之后,在pycharm中可以看见下面这些文件,我创建的文件是hylogin。
在这里插入图片描述
我们再去创建app吧,这里使用命令去创建,命令《python manage.py startapp login》,那么我是在哪里输入的命令呢,没错,就是在pycharm的控制台terminal上输入的命令,如果没有报错,那么就是新建成功了。恭喜你成功了第一步,如果在django3上面,有些人就没有那么成功了。这个后面再讲。我么先讲刚才创建的app login结构是什么样的。
在这里插入图片描述
创建好之后,我们观察如下:
在这里插入图片描述
好了,我们说一下上面创建app时候可能遇到的问题,如果你输入命令之后,在底部发现提示这个,那么你只需要在setting.py文件中加上import os即可。我也不知道为什么,我先观察的是manage.py文件中有导入os,按理来说不应该会提示这个问题,后面我尝试在配置文件setting.py中导入发现不会报错了。就是这么神奇。
在这里插入图片描述
养成这种习惯可好,每次我们创建app之后,都去setting.py中将app注册进去,
在这里插入图片描述观察发现,他自己本身就携带了几个app,有admin后台管理,session会话管理等。
最后,我们还要改一点东西,因为我们是中国人,我们习惯于中国时区等元素,我们可以去setting.py中修改一下配置,如下我们修改了TIME_ZONE,我们一定要将USE_TZ改为false,具体看到这句解释我还是不太懂。(求教),至此我们登录注册需要使用的功能文件就都准备好了,我们先去看看能不能打开页面,在pycharm终端输入命令《python manage.py runserver》正常来讲不会报错,那么我们就按照它提示的我们打开那个地址,去浏览器看看是什么样子吧。在这里插入图片描述
如果是下面这张图,恭喜你成功了,那为什么这里什么都没有呢,那是我们什么页面也没有写。
在这里插入图片描述
以上仅是前期的准备工作,之后我们构想我们使用登录注册功能,首先根据MVT模式,(我理解的MVT就是先思考有哪些数据字段,然后再去构建视图,再去写前端模板)我们要先创建models,也就是django的数据库相关内容。但是user这个东西django自带一个库,我们是使用自带的还是自己去写一个库呢,后面还是决定自己写models去实现。
在login app中的models.py文件中写上数据库需要的字段吧,走起
我们给用户数据库加上哪几个字段呢?用户名,密码,昵称,邮箱,性别,注册时间。
在这里插入图片描述

from django.db import models

# Create your models here.
# user login models class
class User(models.Model):
    gender = (
        ('male',"男"),
        ('female', "女"),
    )
    # 用户名,unique设置独一无二
    name = models.CharField(max_length=128,verbose_name="username",unique=True)
    # 密码
    password = models.CharField(max_length=256,verbose_name="pwd")
    # 昵称
    nick_name = models.CharField(max_length=128,verbose_name="nikename",default=name)
    # 邮箱,也要独一无二
    email = models.EmailField(unique=True)
    # 性别,通过choices去选择,给他一个默认的值
    sex = models.CharField(max_length=32,choices=gender,default='男')
    # 注册时间,自动添加
    c_time = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        # 显示对象信息
        return self.name

    class Meta:
        # 排序前加负号表示倒叙,也就是先注册(好早以前)的在上面
        ordering = ["-c_time"]
        verbose_name = "用户名"
        verbose_name_plural = "用户名"

注意事项:
1、我们一般会加上__str__和Meta等信息
2、加上models之后,我们要去执行命令《python manage.py makemigrations》和《python manage.py migrate》,这两行命令是表示我们要知道model中有哪些进行了修改,然后生成迁移文件。每次修改model中的内容之后,两条命令都执行一下。
在这里插入图片描述
执行命令之后,我们这里生成了下面这些内容
在这里插入图片描述
我们创建的数据字段,在admin后台都有记录,于是我们去django自带的后台查看一下吧,于是先创建超级用户用于登录后台,在终端执行命令《python manage.py createsuperuser》,然后输入用户名和邮箱密码等即可。
在这里插入图片描述
如果你就是这样屁颠屁颠的跑去打开管理后台,访问地址就是在执行命令《python manage.py runserver》之后打开的网址中加入/admin/即可《http://127.0.0.1:8000/admin/》
在这里插入图片描述
咦,怎么没有发现我们创建的数据类呢?
哦,那可能是我们没有注册到admin后台吗?没错就是这样,那怎么去注册呢?
告诉你吧,在app login中找到admin.py,输入下面这段代码,就能够注册在admin后台,为什么注册进去呢,方便我们管理数据啊,我们可以通过后台去添加或者删除数据呢?妈妈看见了都说可方便啦。
在这里插入图片描述
再刷新一下后台,这不就出来了吗。如果有人问我,为什么展示的是用户名3个字,而不是我们定义的class User,我一巴掌呼过去,看到我们上面定义的Meta?里面有verbose_name = "用户名"和下面ddverbose_name_plural = "用户名"的定义,取得数据就来自这里。你可以修改一下这里的数据,刷新去admin后台看看有什么变化哈。
在这里插入图片描述
添加到admin后台我们就能够进去添加用户,当后面做出前端页面以及后台数据处理之后,我们能够使用这个账号登录啦。
在这里插入图片描述
说实话还有很多小细节自己还没有弄完整,具体更详细的教学你们去网上搜索django教程即可,我也是刚入门,写文档记录自己的学习。比如数据库选型我这里直接用默认的,没有接入其它数据库。
登录注册第一课完结撒花!!!

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值