Python 用Django创建自己的博客(1)

开篇

学Python也有一段时间了,总想做点东西,是时候慢慢的做点东西了,看了许多资料和博客,也决定自己慢慢的亲手搞一个,之前学的时候总觉得先记下来有空一起总结,发现效果并不好,今天索性新建一个项目,从头开始边做边对最近的学习总结一下吧。

准备

python版本:3.5.2
编辑器:PyCharm
Django版本:1.8.2
PyCharm的获取和配置如果有需要可以看我的上一篇文章:
Python PyCharm编辑器配置和使用

创建工程和APP

打开PyCharm创建一个项目如下图


创建项目
设置工程名

创建之后的目录结构如下

目录结构.png
Blog  项目的容器 

wsgi.py
    python服务器网关借口   python应用与web服务器之间的接口
urls.py 
    url配置文件   django项目中都需要我们自己去配置他们的地址来链接
setting.py
    项目的总配置文件   包含了 数据库  web  以及其他的一些配置
    
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
   项目的根目录
    
    SECRET_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx$95jg0m@'
 创建项目生成的安全码
    
    DEBUG = True
 用于调试 但是在实际项目中 不要打开

    ALLOWED_HOSTS = [] 只允许 在这里添加的 网址 去访问页面

    TEMPLATES模板的配置
    
    STATIC_URL = '/static/'              静态文件地址

    DATABASES  设置数据


创建应用   article 加入到  setting.py    INSTALLED_APPS中 

创建新的APP
在我们输入执行

python manage.py startapp article

命令之后,可以看到PyCharm目录中增加了相关文件如下图


创建APP.png

上图中

article文件下 文件介绍 
    migrations   数据移植模块  内容自动生成 
    admin.py    该应用的后台配置文件
    apps.py   应用的一些配置   django 1.9以后自动生成的
    models.py 数据模块   使用ORM框架  类似于mvc的  model模块
    tests.py  自动化测试模块
    view.py 执行响应的逻辑代码模块    项目中主要的代码编辑区

现在我们需要在setting.py中添加新建APP,然后运行项目如下图

python manage.py runserver   #启动Django中的开发服务器

另外我们也可以自己设置端口号

runserver 8002  # 后面加端口号用以改变端口

# 当提示端口被占用的时候,可以用其它端口:
python manage.py runserver 8001
python manage.py runserver 9999
添加项目启动服务器

把左侧命令行中的网址放到浏览器中看到他已经运行了

网页效果

其实我们创建项目与APP的命令都可以在命令行中

 django-admin.py startprojec tXXXX  #创建项目
 python manage.py startapp XXXX  #创建app
 python manage.py runserver   #启动Django中的开发服务器

我们依据工程中的 manage.py来创建APP等一系列的操作,那么我看一下 manage.py还有那些其他作用
在终端中输入可以看到他的其他命令

python manage.py
manafe.py的功能01.png
manafe.py的功能02.png
创建数据库

在models.py中设置相应的数据库字段

python manage.py makemigrations
python manage.py migrate #命令行运行该命令

运行结果如下:

数据建表

然后我们打开数据库,可以看到我们新增加的Article表已经存在如下图

数据库列表显示

在软件中我们可以对数据库进行一系列的操作,下面我们加一些数据,然后到后台去查看他们
随便增加一些数据

增加数据信息
网站的后台

作为一个网站我们需要登录后就可以从后台上传我们想要的内容,而不是每次操作数据库,Django具有很强大的后台,只需要简单的处理我们就可以使用它,然后可以从后台查看我们刚刚手动加入到数据库中的内容
在创建项目的时候已经默认设置好了连接后台的配置,但是我满要把我们的数据库与它关联起来,不然虽然进入后台但是并不会显示我们的数据
article/admin.py中设置如下

#导入models
from article.models import Article

# Register your models here.
admin.site.register(Article)

接下来我们只需要创建一个超级用户并执行打开后台的命令就可以了

python manage.py createsuperuser

如下图 输入账号,邮箱和密码(用户名 不能和邮箱一样 密码不要太简单 不允许)
然后运行后台服务器

python manage.py runserver

在地址栏输入:http://127.0.0.1:8000/admin

创建超级用户并打开后台

进入后台可以看到我们创建的内容

进入后台

点入我们创建的Article可以看到我们之前手动添加的文章信息

具体的文章信息

可以看到还是有许多bug的,不要急一步步来,首先后台时英文的,这个节奏不对啊,先改成中文的嘿嘿。
setting.py中
LANGUAGE_CODE = 'en-us' 默认英文
改为汉语 LANGUAGE_CODE = 'zh_Hans'
在新版本的django 之中 值保留了'zh_Hans' 和'zh_Hant'繁体字
然后刷新页面可以看到改变后的页面。

站点汉语修改

是不是顺眼多了呢,哈哈。
当然如果我们想要美化后台界面的话我们可以引入bootstrap使用框架来美化后台的显示效果。
django-admin-bootstrap
利用pip安装

pip install bootstrap-admin

然后在setting.py中修改INSTALLED_APPS中加入'bootstrap_admin'
然后运行后台服务器并刷新界面

bootstrap_admin优化界面

呃呃,貌似更丑了,第一遍先显示出来吧,大体逻辑先搞完再说,留个坑在这。
目前为止这里有几个待优化先说一下,先记录一下,一个是样式的优化,后台上传文章,现在是文本形式的,我们可以通过第三方库修改他的样式改成类似于word或者markdown形式的。
这里先优化一下显示后台文章对应的名字
在models.py中 如果是python3写法如下

 def __str__(self):
        return self.title

修改后的显示效果


显示文章名

后记

今天的内容主要是创建项目和创建相关的数据库,并修改其中的内容,然后在后台进行数据显示,并修改后台显示的效果,下篇文章主要该写一下前端页面的显示和交互逻辑了,然而还并不熟悉,还有比较头疼的html写法,是时候出去找一波网上的写好的前端模板了学习学习了,照着学习一遍对html学习也大有好处,哈哈,加油!今天就到这吧,五一劳动节,结束,明天去公司要赶项目了。。。

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

推荐阅读更多精彩内容