Django前后端分离开发-新闻管理系统(一)

项目源码下载:https://github.com/Cherish-sun/NEWS/tree/master

一、开发目的

通过新闻系统前后端分离开发,在后端开发web api的过程中让你快速熟练掌握django rest framework框架的开发,让你要项目实战中掌握rest 标准api的开发技术。在前端开发让你快捷简便的掌握django模板调用api的过程。

二、开发环境

•开发工具:Pycharm

•开发环境为: Windows10、Python3.6.8、Django2.0.3、djangorestframework(3.8.2)

•数据库:Mysql5.6

•前端:Div+Css 、ajax 、 Django2.0.3

•后端:Django2.0.3、djangorestframework(3.8.2)

三、创建项目和应用

django-admin.py startproject newsapi
python manage.py startapp article

四、安装项目所需依赖包

pip install django==2.0.3
pip install djangorestframework==3.8.2
pip install pymysql
pip install Markdown
pip install django-filter
pip install django-crispy-forms
pip install django-cors-headers
pip install django-rest-swagger

五、配置setting.py

# 注册app
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'article', # 我们的app
    'rest_framework', # 前后端分离框架
    'crispy_forms',  # 展示表单
    'django_filters', # 查询
    'rest_framework.authtoken',  # 认证
    ]

# 连接mysql数据库
DATABASES = {
'default': {
    'NAME': 'news',  # 数据库名
    'ENGINE': 'django.db.backends.mysql',
    'USER': 'root',  # 用户名
    'PASSWORD': 'test',  # 密码
    'HOST': '127.0.0.1',  # 主机IP
    'PORT': '3306',  # 端口
    'useSSL': 'false',
  }
}

# 时间设置
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False  # 默认是True, 时间是UTC时间,由于我们要用到本地时间,所以设置成False

# 默认文件路径设置
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static').replace('', '/')
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),)
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace('\\', '/')

windows上mysql安装可参考我的另一篇文章:https://www.jianshu.com/p/d16fb1679a87
打开mysql连接工具,我用的是HeidiSQL,下载安装:https://jingyan.baidu.com/article/f7ff0bfc3f2d132e26bb13d4.html,创建数据库news

建库

六、初始化配置rest framework(setting.py中)

# token rest framework 配置实现
REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': (
        'rest_framework.permissions.IsAuthenticated',  # 必须有
    ),
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.BasicAuthentication',
        # 'rest_framework.authentication.TokenAuthentication',#系统已有的
        'article.auth.MyTokenAuthentication',  # 自定义的带过期的认证
    ),
    'DEFAULT_RENDERER_CLASSES': (
        'rest_framework.renderers.JSONRenderer',
    ),
    'DEFAULT_PARSER_CLASSES': (
        'rest_framework.parsers.JSONParser',
    )
}

七、配置pymysql

# 在setting.py 同级目录下的init文件导入
import pymysql
pymysql.install_as_MySQLdb()

此时项目结构应该为:


项目结构

文件中newsapi_env是我创建的python虚拟环境(建议,防止各个项目环境相互影响),不创建也可以。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,053评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,527评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,779评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,685评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,699评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,609评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,989评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,654评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,890评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,634评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,716评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,394评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,976评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,950评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,191评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,849评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,458评论 2 342

推荐阅读更多精彩内容

  • # Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列...
    小迈克阅读 2,956评论 1 3
  • python 也是很值得学习的一门工具。学好python和R。 1环境管理 管理 Python 版本和环境的工具 ...
    Liam_ml阅读 4,796评论 1 51
  • 前言 上一节中,我们强烈推荐Python作为web开发的主要编程语言。接下来,我们将开始一步步安装和配置Pytho...
    弦思非凡阅读 3,638评论 0 2
  • 服务说明文档 对于每个服务而言,都应有一个清晰的服务说明,描述当前服务的信息,同时帮助团队更快腿解并快速上手。服务...
    UEUEO阅读 2,705评论 0 0
  • 阳光耀眼,明知道阳光耀眼却还是要抬头看看太阳在哪里,明明能够从现代化的工具上看到准确的时刻还是要看看太阳确认一下是...
    天不下雨阅读 226评论 0 0