码迷,mamicode.com
首页 > 其他好文 > 详细

Django实战:构建一个blog

时间:2015-07-24 12:56:21      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:django   web实战   构建blog   

本篇博文教大家如何用Django框架实现一个博客系统,可在后台管理博客。
一,创建项目

django-admin.py startproject mysite

如下图所示:
技术分享
运行该命令后,就会在当前目录下创建一个目录mysite

二,测试开发服务器
进入到mysite目录,然后运行./manage.py runserver 0.0.0.0:8001,如下图所示:
技术分享
注意这里我选择的端口号是8001,你也可以选择别的端口(如8002),但是要注意的是这个端口不能被占用
我们在浏览器中输入129.168.129.140:8001,如下图所示:
技术分享
看到上面的显示就表明你的开发服务器能正常运行。注意这里我输入的ip地址是129.168.129.140,你要换上你的ip地址
可ifconfig看,如下图所示:
技术分享

三,新建blog应用
输入./manage.py startapp blog,如下图所示:
技术分享
会在当前目录下面创建一个blog目录,该目录就对应我们的blog应用。
将应用blog添加到settings.py配置文件中
输入vim mysite/settings.py,将blog添加到INSTALLED_APPS中,如下图所示:
技术分享
注意这一步是必须的,我们每新建一个app,就要在配置文件中添加这个app

四,设计Model
我们vim blog/models.py
然后修改它,如下图所示:
技术分享
我们新建了一个Blog类,该类继承自models.Model。然后我们定义了三个成员变量title、body和time,这里要注意他们的类型。
我们的models.py是跟数据库打交道的,这里创建了Blog类,到时候在数据库中就会生成对应的Blog表,三个成员就会对应Blog表的三列。

五,设置数据库
我们要设置数据库(在mysite/settings.py中配置),以便生成对应models.py中定义类的表。
vim mysite/settings.py,然后做如下修改:
技术分享
我这里设置的数据库是sqlite3,当然你也可以设置成mysql或其它的数据库。然后NAME那一项要设置数据库文件的路径,这里的路径是相对于项目的根目录来说的。

六,同步数据库
保存退出之后,在终端下输入./manage.py syncdb就可生成对应的表,如下图所示:
技术分享
注意初次运行时,会问你需不需要创建一个超级用户,这里最好创建,以后会用到。
同步完成之后,就可以看到生成的sqlite3数据库文件了,如下图所示:
技术分享

七,admin
admin是自动化的后台应用程序。admin作为一个应用,地位等同于我们刚才创建的应用blog,所以我们必须要在配置文件中声明它,如下图所示:
技术分享
我们把这行注释去掉,如下图所示:
技术分享
再执行命令./manage.py syncdb同步一下数据库,注意以后我们每添加一个app,都要同步数据库,以创建该app对应的各种表,如下图所示:
技术分享

八,指定url
修改mysite/usrls.py文件,如下图所示:
技术分享
将这行的注释给去掉,以后我们在浏览器中输入ip:port/admin/就可以访问了。
修改后如下图所示:
技术分享

九,注册Model
为什么需要这一步?你需要告诉django要在admin窗口里显示哪一个model。
我们修改blog/models.py,如下图所示:
技术分享

十,测试
在终端下输入./manage.py runserver 0.0.0.0:8001,如下图所示:
技术分享
然后在浏览器中输入yourip:8001/admin,如下图所示:
技术分享
登录:
这里输入第6步中设置的用户名和密码,就可以登录了,登录后如下图所示。
技术分享

Django开发实战视频教程:http://www.duobei.com/course/3812028831

版权声明:本文为博主原创文章,未经博主允许不得转载。

Django实战:构建一个blog

标签:django   web实战   构建blog   

原文地址:http://blog.csdn.net/u011943221/article/details/47038215

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!