Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1614429
  • 博文数量: 267
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1939
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-31 14:30
个人简介

自己慢慢积累。

文章分类

全部博文(267)

分类: Python/Ruby

2020-08-04 10:48:11

2 修改设置
2.1
设置时区和语言

在项目的settings文件中编辑settings.py

  1. LANGUAGE_CODE = 'zh-hans'

  2. TIME_ZONE = 'Asia/Shanghai'

  3. USE_I18N = True

  4. USE_L10N = True

  5. USE_TZ = False

至于这个USE_TZ,如果你不涉及不同时区的话,这个就改成false,否则使用起来略麻烦。但是也有人主张一定要设置成true,说是习惯了以后就会收益。看个人情况。
修改时区后,127.0.0.1:8000 就变成中文的了

2.2 注册APP
还在 setttings.py里,把之前创建的APP注册一下。
  1. INSTALLED_APPS = [
  2.     'django.contrib.admin',
  3.     'django.contrib.auth',
  4.     'django.contrib.contenttypes',
  5.     'django.contrib.sessions',
  6.     'django.contrib.messages',
  7.     'django.contrib.staticfiles',
  8.     'your-app-name',
  9. ]
2.3 其他目录创建

自己创建的 app 目录下面,创建 templates 文件夹,用来放 html 文件
项目根目录下新建一个static目录,在static目录下,新建一个css和js目录,作为以后的样式文件和js文件的存放地
然后打开项目的settings文件,在最下面添加配置,用于指定静态文件的搜索目录:

  1. STATIC_URL = '/static/'
  2. STATICFILES_DIRS = [
  3.     os.path.join(BASE_DIR, "static"),
  4. ]

3 设置数据库
3.1 修改数据库为mysql

在settings.py修改

  1. DATABASES = {
  2.         'default': {
  3.             'ENGINE': 'django.db.backends.mysql',
  4.             'NAME': 'django', #数据库名字
  5.             'USER': 'root', #账号
  6.             'PASSWORD': '123456', #密码
  7.             'HOST': '127.0.0.1', #IP
  8.             'PORT': '3306', #端口
  9.         }
  10.     }
安装mysql支持模块

  1. pip install mysqlclient

3.2.数据库模型设计 (数据库表的设计)
编辑APP项目里面的 models.py
例如创建一个用户表

  1. from django.db import models
  2.  
  3.  
  4. class User(models.Model):
  5.     '''用户表'''
  6.  
  7.     gender = (
  8.         ('male','男'),
  9.         ('female','女'),
  10.     )
  11.  
  12.     name = models.CharField(max_length=128,unique=True)
  13.     password = models.CharField(max_length=256)
  14.     email = models.EmailField(unique=True)
  15.     sex = models.CharField(max_length=32,choices=gender,default='男')
  16.     c_time = models.DateTimeField(auto_now_add=True)
  17.  
  18.     def __str__(self):
  19.         return self.name
  20.  
  21.     class Meta:
  22.         ordering = ['c_time']
  23.         verbose_name = '用户'
  24.         verbose_name_plural = '用户'


各字段含义:

  • name必填,最长不超过128个字符,并且唯一,也就是不能有相同姓名;
  • password必填,最长不超过256个字符(实际可能不需要这么长);
  • email使用Django内置的邮箱类型,并且唯一;
  • 性别使用了一个choice,只能选择男或者女,默认为男;
  • 使用__str__帮助人性化显示对象信息;
  • 元数据里定义用户按创建时间的反序排列,也就是最近的最先显示;
注意:这里的用户名指的是网络上注册的用户名,不要等同于现实中的真实姓名,所以采用了唯一机制。如果是现实中可以重复的人名,那肯定是不能设置unique的。


3.3 数据库迁移(同步表结构到MYSQL)

  1. python manage.py makemigrations
  2.  
  3. python manage.py migrate

4. admin台设置
4.1.在admin中注册模型

  1. from django.contrib import admin

  2. # Register your models here.

  3. from django.contrib import admin
  4. from . import models

  5. admin.site.register(models.User)

4.2.创建超级管理员

python manage.py createsuperuser

然后可以登录后台
127.0.0.1:8000/admin

阅读(410) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~