上一篇文章已经把基础环境搭建好了

一  创建app

    D:\学习\python3.7.3\python manage.py startapp blog

    修改 博客的 models.py

class Blog(models.Model):
title = models.CharField(max_length=)
#这里要注意外键关联 如果 关联的类没有在之前没用定义 那么一定要加引号 这里采用一个博客对应一个博客类型 一一对应
blog_type = models.ForeignKey('BlogType',on_delete=models.DO_NOTHING)
content = models.TextField()
author = models.ForeignKey(User,on_delete=models.DO_NOTHING)
created_time = models.DateTimeField(auto_now_add=True)
last_updated_time = models.DateTimeField(auto_now=True)
def __str__(self):
return "<Blog: %s>" %self.title class BlogType(models.Model):
type_name=models.CharField(max_length=) def __str__(self):
return self.type_name

模板修改好了  还需要修改settings.py 文件

加入

import pymysql         # 一定要添加这两行!通过pip install pymysql!
pymysql.install_as_MySQLdb() DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mysite',
'HOST': '123.2X7.XX9.194',
'USER': 'root',
'PASSWORD': 'XXX',
'PORT': '',
}
} #修改
LANGUAGE_CODE = 'zh-Hans' TIME_ZONE = 'Asia/Shanghai' USE_I18N = True USE_L10N = True USE_TZ = True
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
]

安装 pymysql 包

将改变应用于 数据库

>D:\学习\python3.7.3\python manage.py makemigrations

>D:\学习\python3.7.3\python manage.py migrate

   创建超级admin用户

  python manage.py  createsuperuserr

最后 为了能在admin里面显示 需要admin.py里面注册一下

from .models import BlogType,Blog

@admin.register(BlogType)
class BlogTypeAdmin(admin.ModelAdmin):
list_display = ("id", "type_name") @admin.register(Blog)
class BlogAdmin(admin.ModelAdmin):
list_display = ("title","blog_type","author","create_time","last_updated_time" )
# Register your models here. ##也可以
#admin.site.register(BlogType) 这样注册的确定是 全部都会显示在后台

启动项目发现报错

raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)

修改配置文件 注释报错

继续启动还是报错

    query = query.decode(errors='replace')
AttributeError: 'str' object has no attribute 'decode'

继续修改配置文件 把decode 修改为encode

登陆后

最新文章

  1. ABAP 常见查询问题解决方法
  2. 解决升级PHP7后 微信公众号收不到消息
  3. swift动画小试牛刀
  4. Centos6.5 python2.7连接mysql数据库
  5. 删除oracle表报ORA-24005错误
  6. HDU 3549 网络最大流再试
  7. openldap sshkey & 用户自定义属性
  8. LeetCode2:Median of Two Sorted Arrays
  9. CentOS6.5安装telnet
  10. 关于Sublime Text3 pyV8无法加载的问题
  11. sql server identity限制
  12. javascript表单行为效果展示
  13. iOS学习——JSON数据解析(十一)
  14. vagrant命令
  15. SVM分类器实现实例
  16. asp.net core 排序过滤分页组件:sieve(1)
  17. Mybatis框架可视化(1)
  18. 极端恢复时用到的几个隐藏参数 Oracle hidden corruption recovery parameters
  19. (转)C#连接Oracle数据库(直接引用dll使用)
  20. BZOJ2227 [Zjoi2011]看电影(movie)

热门文章

  1. ubuntu tensorflow cpu faster-rcnn train data
  2. spark入门备忘---1
  3. RAID概念记录
  4. Java使用jxl写入Excel文件
  5. PJzhang:钓鱼域名生成工具urlcrazy
  6. vim实现批量注释和批量删除注释
  7. VC程序运行时间测试函数
  8. 最新 华云数据java校招面经 (含整理过的面试题大全)
  9. Sping POJO中如何添加验证规则和验证消息提示
  10. 通过DLNA将电脑视频投射到电视屏幕