万里长征第二步——django个人博客(第四步 ——创建数据库)
- 在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 - 在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' - 创建mysql数据库,进入命令行
C:\Users\66439>mysql -uroot -p664390 ——进入mysql数据库 mysql> CREATE DATABASE blogdb; ——创建一个 'blogdb' 表
Query OK, 1 row affected (0.00 sec) - 进入虚拟环境
D:\python\blog_project>d:\python\blog_project_venv\Scripts\activate
- 生成数据库同步文件
(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 articlemakemigrations blog ——带上 'blog' ,只生成 'blog' 内的 'models.py'
- Add field user to article
- 同步数据库
(blog_project_venv) D:\python\blog_project>manage.py migrate
万里长征第二步——django个人博客(第四步 ——创建数据库)的更多相关文章
- 万里长征第二步——django个人博客(第一步 ——创建主页)
运行命令行工具,输入:pip install virtualenv --安装virtualenv库. virtualenv blog_project_venv ——使用virtualenv创建一个虚 ...
- 万里长征第二步——django个人博客(第三步 —— 设置一些全局变量)
可以将一些全局变量设置在settingg.py里 #网站的基本信息配置 SITE_NAME = 'John的个人博客' SITE_DESC = '专注学习Python开发,欢迎和大家交流' WEIBO ...
- 万里长征第二步——django个人博客(第七步 ——上传文件)
在项目目录下新建一个 ‘uploads’文件夹以保存上传的文件 配置setting.py文件 MEDIA_URL = '/uploads/' MEDIA_ROOT = os.path.join(BAS ...
- 万里长征第二步——django个人博客(第五步 ——配置后台admin)
在urls.py文件中配置admin路径 from django.conf.urls import url from django.contrib import admin from blog.vie ...
- 万里长征第二步——django个人博客(第二步 ——日志记录器)
定义日志记录器 可以在setting.py里设置日志记录器 # 自定义日志输出信息 LOGGING = { 'version': 1, 'disable_existing_loggers': True ...
- 万里长征第二步——django个人博客(第六步 ——添加富文本编辑器)
下载kindeditor 在admin.py文件中配置链接 class Media: js = ( '/static/js/kindeditor-4.1.10/kindeditor-min.js', ...
- Django搭建博客网站(四)
Django搭建博客网站(四) 最后一篇主要讲讲在后台文章编辑加入markdown,已经在文章详情页对markdown的解析. Django搭建博客网站(一) Django搭建博客网站(二) Djan ...
- Django 系列博客(四)
Django 系列博客(四) 前言 本篇博客介绍 django 如何和数据库进行交互并且通过 model 进行数据的增删查改 ORM简介 ORM全称是:Object Relational Mappin ...
- Django个人博客开发 | 前言
本渣渣不专注技术,只专注使用技术,不是一个资深的coder,是一个不折不扣的copier 1.前言 自学 Python,始于 Django 框架,Scrapy 框架,elasticsearch搜索引擎 ...
随机推荐
- mybatis开启字段自动映射为java驼峰命名规则
<settings> <setting name="mapUnderscoreToCamelCase" value="true"/> & ...
- php设计模式三-----建造者模式
1.简介 意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示. 主要解决:主要解决在软件系统中,有时候面临着"一个复杂对象"的创建工作,其通常由各个部分的子 ...
- django “如何”系列3:如何编写模型域(model filed)
django自带很多的域类--CharField,DateField等等--,如果django的这些域都不能满足你精确的要求,那么你可以编写自己的模型域. django自带的域没有和数据库列类型一一对 ...
- C# 中从程序中下载Excel模板
方法一: #region 下载模板 /// <summary> /// 下载模板 /// </summary> /// <param name="sender& ...
- DotNetCore 微服务上传附件
后台接口升级成netcore 2.0了,然后之前的上传图片的接口就不再使用了.新的接口形式 #region IFormCollection /// <summary> /// IFormC ...
- keycloack docker 本地运行
参考github地址:https://github.com/jboss-dockerfiles/keycloak 首先使用git 下载该项目 使用docker-compose运行项目,需要进入至doc ...
- Oracle 使用序列、触发器实现自增
之前项目开发多用mysql,对于id自增长设置,只需要简单修改列属性便好.最近改用ORACLE,头大一圈.ORACLE的相关操作,多用脚本.想短平快,难.最终用sql developer通过UI进行修 ...
- 安装 SQL Server 2008 和管理工具 SQL Server 2008 management studio 及相关问题解决
Sql Server 2008 问题小总结 http://www.lihengyu.com/blog/4877.html 安装 SQL Server 2008 和管理工具 SQL Server 200 ...
- 关于sql查询语句中的别名
sql语句中给子查询或其他查询类型加别名的时候可能会报错 java.sql.SQLException: 无法转换为内部表示 原因是select返回类型的实体类中没有写该别名 原来的实体类 更改后的实体 ...
- Sd - Java多线程
1. Java中线程有哪些同步的方法? 在Java语言中,每个对象都有一个锁,一个线程可以通过关键字synchronized来申请获取某个对象的锁,关键字synchronized可以被用于方法(粗粒度 ...