基于Python搭建Django后台管理系统

 

一、博客网站的创建

创建项目 

生成站点(sites)Model,这两步骤第一篇有介绍,这里就直接操作了 

二、数据库配置

介绍一下数据库的配置就是在setting里面配置链接的数据库,这里系统以及配置好了,链接一个叫做db.sqlite3的数据库,也许有读者会问,这个数据库在哪里,我怎么没有,没关系,你跑一下项目,系统就自动生成一个这个数据库了,当然django也支持MySQL等其他数据库,这里为了方便讲解,就用系统自带的 


INSTALLED_APPS 这个参数是安装myBlog这个项目中所有用到的Application,当然我们创建的sites也是一个Application,所有也加进去,下面这几个都是系统自带的框架,默认安装

django.contrib.admin —— 管理站点
django.contrib.auth —— 认证系统
django.contrib.contenttypes —— 用于内容类型的框架
django.contrib.sessions —— 会话框架
django.contrib.messages —— 消息框架
django.contrib.staticfiles —— 管理静态文件框架


添加完sites到INSTALLED_APPS后需要执行下面终端命令, migrate会查看INSTALLED_APPS的设置,并根据myBlog/settings.py文件中的数据库设置创建任何必要的数据库表
python manage.py migrate

之后,我们运行一下项目,输入http://127.0.0.1:8000/admin 看一下效果 


三、数据库后台搭建

到登录页基本完成一半啦,接下来就需要创建一个管理员账户用于登录使用,
1.python manage.py createsuperuser

 
2. 创建完账户就可以去登录了,效果如下 

3. 因为全部是英文,代码君看不惯,想把他改成中文settings.py中将LANGUAGE_CODE 中的’en-us’ 改成 ‘zh-Hans’,这样看起来是不是舒服多了 


四、创建数据库模型

在sites中的models创建数据库表的模型,如下图,字段有title、url、body、create_date, 

五、激活模型 
这步很关键,你每次修改model里面的数据,都要从复执行这下面这几个步骤:

在 myBolg/settings.py 中,修改INSTALLED_APPS,引入要用到的Application,我们目前只有一个sites,已经引用过了,所以无需再引用

执行终端命令

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


 
3. 将model添加到sites/admin.py里 

4. 运行一下项目,打开管理界面,查看效果,然后你就看随意添加Article内容啦 http://127.0.0.1:8000/admin 

 


六、踩坑总结

UnicodeEncodeError: ‘ascii’ codec can’t encode characters 
之前模型model中写了一个方法 def str(self):这个是旧版本中用的方法,Django新版本要换成def unicode(self):, 这样就解决了字符串传递时出错的问题,统一编码为Unicode字符串。

OperationalError no such table / OperationalError table sites_article has no column named test 
这是一类错误,就是我之前提醒的,我们增加model或者修改models.py里面的代码后,需要从新执行步骤五,步骤五的作用就是更新数据库表的信息,比如你新增model中的一个字段,没有更新数据库表,自然会报上面的错误 
解决方法:运行步骤五的终端命令

python manage.py makemigrations
python manage.py migrate
 
原文:https://blog.csdn.net/u012927188/article/details/78978611 
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/456917.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机研究所专业课,【择校必看】十三所计算机专业课只考数据结构的985院校!...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼敲黑板:本文涉及到的学校计算机专业考研只考数据结构,其中部分院校同时也会考算法、C语言等相关内容。但是,相对其他几门,无疑在专业课的复习上大大降低了难度。如果各位同学目前的专…

在Python2.7下如何安装TA-lib库

最近在做一个关于股票预测的模型,由于想要用Talib库中的方法,来提取各种金融技术指标,所以就下了这个库。但整个过程可谓是一波三折。花费了大半天才搞定这件事。 下面来给大家分享一下安装的步骤,省的大家再往这个坑里跳。。。 …

JavaScript 实现继承的5种方式

js是一个面向对象的语言,所以具备一些面向对象的方式----------例如继承。接下来介绍5种js的继承方式.注意:js 中的函数其实是对象,函数名是对 Function 对象的引用。 1.采用call方法改变函数上下文实现继承,原理是改变函数内部的…

day20 django

1、Django请求的生命周期武彦涛:路由系统 -> 试图函数(获取模板数据》渲染) -> 字符串返回给用户2、路由系统王腾:/index/ -> 函数或类.as_view()/detail/(\d) -> 函数(参数) 或 类.as_view()(参数&am…

解决Django 忘记超级管理员密码 重设密码登录教程

看到标题就知道有逗比忘了密码。。。没错就是我。 你也忘了密码? 不要着急! 00: 第一步:运行django shell python3 manage.py shell 01: 第二步:重设密码 >>> from django.contrib.auth…

计算机统计知识,计算机知识在统计工作中的重要性

计算机知识在统计工作中的重要性目前计算机已在县以上统计部门广为利用,如何注意提高统计业务人员的计算机水平,培养出既懂统计业务,又懂计算机知识的复合型统计人才,是当前急待研究和解决的重要问题。一、计算机存在的问题当前在基层统计队伍中使用计算机存在(本文共1页)阅读全…

初学者在python下使用Ta-lib库时遇到的一些问题及解决办法

由于Ta-lib是一款小众库,所以没有很好的API来说明其中各个函数的使用方法。无奈只能摸着石头过河,一个个试其中函数。期间遇到一些问题希望分享出来对大家有帮助。 问题描述:在使用Ta-lib库时用到的一些简单函数如SMA(),WMA(),EMA()这类方法时&#xff…

cocoapods-安装

下面方法解决pod setup出错(特别慢): 1.访问 https://github.com/CocoaPods/Specs,然后将Specs项目fork到自己的github账户上2. 下载GitHub Desktop, 然后clone Specs项目(客户端还是特别慢,我直接check一份…

计算机在输电线路设计中的应用研究,计算机在输电线路基础设计中的应用原稿(备份存档)...

《计算机在输电线路基础设计中的应用(原稿).doc》由会员分享,可免费在线阅读全文,更多与《计算机在输电线路基础设计中的应用(原稿)》相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索。1、节省与浪费材料的情况之分。遵从相应的规则对全部可…

global全局变量

global全局变量 在不指向新的地址时,可以不调用global

C# 获取文件MD5值的方法

可用于对比文件是否相同 1 /// <summary>2 /// 获取文件MD5值3 /// </summary>4 /// <param name"fileName">文件绝对路径</param>5 /// <returns>MD5值</returns>6 public static str…

快速入门Matplotlib

以下是原文正文&#xff1a; 数据的处理、分析和可视化已经成为 Python 近年来最重要的应用之一。这种现象又进一步引出“大数据”分析等类似的话题&#xff0c;而大数据分析在人们所能预见的诸多领域内都有广泛应用&#xff0c;这其中就包含笔者个人感兴趣的机器学习。 Pytho…

谷歌开源 Python Fire:可自动生成命令行接口

为什么80%的码农都做不了架构师&#xff1f;>>> 今天我们很高兴地宣布 Python Fire 开源。Python Fire 可从任何 Python 代码生成命令行接口&#xff08;command line interfaces (CLIs)&#xff09;&#xff0c;简单地调用任意 Python 程序中的 Fire 函数以将那个…

tcp ip计算机网络协议,一篇文章带你熟悉 TCP/IP 协议-(一)

一、 计算机网络体系结构分层不难看出&#xff0c;TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”&#xff0c;而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”。二、 TCP/IP 基础1. TCP/IP 的具体含义从字面意义上讲&#xff…

远程控制python

import telnetlibdef telnetDoSomething(IP,user,passwd,command):try:# 连接服务器telnet telnetlib.Telnet(IP)# 设置调试级别telnet.set_debuglevel(2)# 读取输入用户名信息rt telnet.read_until("Login username:".encode("utf-8"))# 写入用户名tel…

Random Forest算法参数解释及调优

文章介绍了如何对随机森林模型进行参数调优 原文来自&#xff1a;http://www.analyticsvidhya.com/blog/2015/06/tuning-random-forest-model/ 为什么要调整机器学习算法&#xff1f; 一个月以前&#xff0c;我在kaggle上参加了一个名为TFI的比赛。 我第一次提交的结果在50%…

浮动问题

- 浮动很多时候是用来解决多列显示的问题- 浮动之后变为inline-block(浮动文本必须制定width)- 浮动之后会脱离文档流- 浮动后的元素不会存在margin的垂直方向的问题 - 浮动之后会影响周围元素的布局- 浮动不会超出父级元素- 浮动效果只会影响后面的元素&#xff08;包括自己的…

Servlet3.0新特性

1 Servlet3.0新特性概述 使用要求&#xff1a;MyEclipse10.0或以上版本&#xff0c;发布到Tomcat7.0或以上版本&#xff0c;创建JavaEE6.0应用&#xff01;  Servlete3.0的主要新特性如下三部分&#xff1a;    使用WebServlet、WebFilter、WebListener三个注解来替代we…

计算机系统遵循,自考《计算机系统结构》第10章精讲

第十章 新型计算机系统结构本章只作一般要求&#xff0c;了解基本原理和概况。一、计算模型分类(识记)计算模型是描述如何在计算机中完成计算的一种概念性方法&#xff0c;不涉及硬件和软件细节。它给出了完成计算所必须遵循的基本规则。计算机系统结构是有关计算模型的一个具体…

re模块的使用

import re # pip 包管理工具r re.match函数 原型&#xff1a;match(pattern, string, flags0) pattern: 匹配的正则表达式 string: 要匹配的字符串 flags:标志位&#xff0c;用于控制正则表达式的匹配方式,值如下 re.I 忽略大小写 re.L 做本地话识别 re.M 多行匹配&…