1. 在models.py内设置数据库模型

    # -*- coding=utf-8 -*-
    from __future__ import unicode_literals
    from django.db import models
    from django.contrib.auth.models import AbstractBaseUser
    # Create your models here. # 用户模型.
    #第一种:采用的继承方式扩展用户信息(本系统采用)
    #扩展:关联的方式去扩展用户信息
    class User(AbstractBaseUser):
    avatar = models.ImageField(upload_to='avatar/%Y/%m', default='avatar/default.png', max_length=200, blank=True, null=True, verbose_name='用户头像')
    qq = models.CharField(max_length=20, blank=True, null=True, verbose_name='QQ号码')
    mobile = models.CharField(max_length=11, blank=True, null=True, unique=True, verbose_name='手机号码') class Meta:
    verbose_name = '用户'
    verbose_name_plural = verbose_name
    ordering = ['-id'] def __unicode__(self):
    return self.username
  2. 在setting.py内将数据库类型 'DATABASES' 更改为mysql,并自定义要给model
    DATABASES = {
    'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'blogdb',
    'USER': 'root',
    'PASSWORD': '',
    'HOST': '',
    'POST': '',
    }
    }
    #自定义model
    AUTH_USER_MODEL = 'blog.User'
  3. 创建mysql数据库,进入命令行
    C:\Users\66439>mysql -uroot -p664390  ——进入mysql数据库
    
    mysql> CREATE DATABASE blogdb;  ——创建一个 'blogdb' 表
    Query OK, 1 row affected (0.00 sec)
  4. 进入虚拟环境
    D:\python\blog_project>d:\python\blog_project_venv\Scripts\activate
  5. 生成数据库同步文件
    (blog_project_venv) D:\python\blog_project>manage.py makemigrations
    2016-05-25 23:16:29,582 [MainThread:9804] [django.db.backends:89] [utils:execute] [DEBUG]- (0.000) SET SQL_AUTO_IS_NULL = 0; args=None
    Migrations for 'blog':
    0001_initial.py:
    - Create model Ad
    - Create model Article
    - Create model Catagory
    - Create model Category
    - Create model Comment
    - Create model Links
    - Create model Tag
    - Create model User
    - Add field user to comment
    - Add field category to article
    - Add field tag to article

    makemigrations blog ——带上 'blog' ,只生成 'blog' 内的 'models.py'

        - Add field user to article
  6. 同步数据库
    (blog_project_venv) D:\python\blog_project>manage.py migrate

万里长征第二步——django个人博客(第四步 ——创建数据库)的更多相关文章

  1. 万里长征第二步——django个人博客(第一步 ——创建主页)

    运行命令行工具,输入:pip install virtualenv  --安装virtualenv库. virtualenv blog_project_venv ——使用virtualenv创建一个虚 ...

  2. 万里长征第二步——django个人博客(第三步 —— 设置一些全局变量)

    可以将一些全局变量设置在settingg.py里 #网站的基本信息配置 SITE_NAME = 'John的个人博客' SITE_DESC = '专注学习Python开发,欢迎和大家交流' WEIBO ...

  3. 万里长征第二步——django个人博客(第七步 ——上传文件)

    在项目目录下新建一个 ‘uploads’文件夹以保存上传的文件 配置setting.py文件 MEDIA_URL = '/uploads/' MEDIA_ROOT = os.path.join(BAS ...

  4. 万里长征第二步——django个人博客(第五步 ——配置后台admin)

    在urls.py文件中配置admin路径 from django.conf.urls import url from django.contrib import admin from blog.vie ...

  5. 万里长征第二步——django个人博客(第二步 ——日志记录器)

    定义日志记录器 可以在setting.py里设置日志记录器 # 自定义日志输出信息 LOGGING = { 'version': 1, 'disable_existing_loggers': True ...

  6. 万里长征第二步——django个人博客(第六步 ——添加富文本编辑器)

    下载kindeditor 在admin.py文件中配置链接 class Media: js = ( '/static/js/kindeditor-4.1.10/kindeditor-min.js', ...

  7. Django搭建博客网站(四)

    Django搭建博客网站(四) 最后一篇主要讲讲在后台文章编辑加入markdown,已经在文章详情页对markdown的解析. Django搭建博客网站(一) Django搭建博客网站(二) Djan ...

  8. Django 系列博客(四)

    Django 系列博客(四) 前言 本篇博客介绍 django 如何和数据库进行交互并且通过 model 进行数据的增删查改 ORM简介 ORM全称是:Object Relational Mappin ...

  9. Django个人博客开发 | 前言

    本渣渣不专注技术,只专注使用技术,不是一个资深的coder,是一个不折不扣的copier 1.前言 自学 Python,始于 Django 框架,Scrapy 框架,elasticsearch搜索引擎 ...

随机推荐

  1. SQL 列 转换成 查询出来的 行

    查询  每个学生 的  (姓名,语文,数学,英语,成绩)为列 表结构如下: student: 学生表 grade 成绩表 : 查询出如下效果: SQL如下: select s.name,a.* fro ...

  2. linux命令(24):find命令

    1.命令格式: find pathname -options [-print -exec -ok ...] 2.命令功能: 用于在文件树种查找文件,并作出相应的处理 3.命令参数: pathname: ...

  3. python和语法糖

       语法糖(syntactic sugar)是指编程语言中可以更容易的表达一个操作的语法,它可以使程序员更加容易去使用这门语言:操作可以变得更加清晰.方便,或者更加符合程序员的编程习惯.(百度百科的 ...

  4. 辨析各类web服务器:Apache/Tomcat/Jboss/Nginx/等,还有Nodejs

    先说一下各类服务器能干啥,特点是啥,然后在区分他们的类别. (1)Apache: Apache是指Apache软件基金会的Apache HTTP Server, 它能够接收http请求,然后返回各类资 ...

  5. Go语言用mock server模拟调用(httptest)

    mock是个好东东, 在大项目或大公司,很实用, 因为很多环境不是随时在开发环境可得的. package main import ( "testing" "net/htt ...

  6. centos 磁盘分区格式化与挂载

    1 查看系统里硬盘信息fdisk -l 2 磁盘分区fdisk /dev/sdc输入m显示帮助a:命令指定启动分区:d:命令删除一个存在的分区:l:命令显示分区ID号的列表:m:查看fdisk命令帮助 ...

  7. lazarus安装

    https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%201.6.4/ 下载这三个文 ...

  8. 【转载】Scroller源码解析

    原文地址:https://github.com/Skykai521/AndroidSdkSourceAnalysis/blob/master/article/Scroller%E6%BA%90%E7% ...

  9. HDU 5861 Road(线段树 区间修改 单点查询)

    Road Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  10. Xamarin Forms启动自带模拟器缓慢

    Xamarin Forms启动自带模拟器缓慢 Xamarin Forms启动自带模拟器缓慢,在Windows 10中,Visual Studio可以使用系统自带的Hyper模拟器.但是使用时候,会长时 ...