+-
第一个Django项目----一小时写出账号密码管理系统

第一个Django项目----一小时写出账号密码管理系统

1、环境搭建
需安装:
python3.6
Pycharm专业版
django 2.2.6
mysqlclient

pip install django==2.2.6
pip install mysqlclient

2、生成django项目

django-admin startproject yourproject

3、修改数据库引擎为mysql并要数据库中创建对应名字的数据库

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'myblog',        #数据库名
'USER':'root',           #用户名
'PASSWORD':'******',     #密码
'HOST':'127.0.0.1',      #本机地址
'PORT':'3306',           #端口
}
}
pip install mysqlclient

4、初始化数据库

python ./manage.py makemigrations
python ./manage.py migrate

5、汉化(修改项目settings.py)

LANGUAGE_CODE = 'zh-hans'

6、启动django项目

cd yourproject
python ./manage.py runserver 0.0.0.0:8000

7、创建django后台管理员

python ./manage.py createsuperuser

8、创建自己的app

python .\manage.py startapp yourapp

9、定义app的数据模型model.py

from django.db import models

# Create your models here.

class SinfoM(models.Model):
description=models.CharField(max_length=50,verbose_name='描述',null=False,blank=False)
username=models.CharField(max_length=50,verbose_name='账号',null=False,blank=False)
password=models.CharField(max_length=50,verbose_name='密码',null=False,blank=False)
remark=models.CharField(max_length=50,verbose_name='备注',null=True,blank=True)

class Meta:
db_table=u'self_info'
verbose_name=u'个人信息'
verbose_name_plural=u'个人信息'

def __unicode__(self):
return self.username

def __str__(self):
return self.username

10、在app的admin中定义页面显示内容

from django.contrib import admin

# Register your models here.

from sinfom.models import SinfoM

class SinfoMAdmin(admin.ModelAdmin):
# exclude = ('password')
list_display = (
'description',
'username',
'password',
'remark'
)

admin.site.register(SinfoM,SinfoMAdmin)

11、重新执行数据库脚本

python ./manage.py makemigrations
python ./manage.py migrate

12、将app注册到项目的settings.py中

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'yourapp',
]

13、Pycharm专业版Debug配置及页面展示效果



备注:
生产环境settings.py
ALLOWED_HOSTS = [*]