您的位置:首页 > 运维架构 > 网站架构

Django框架搭建个人博客网站实例

2015-10-27 09:40 483 查看
Django框架搭建个人博客网站实例

1、搭建一个基于Django的网站,满足攻击所需的软件环境;

首先:linux下默认python2.7的环境!所以这里我们省去在linux平台下搭建python环境!(win下必须得去python官网下载并安装所需环境!)

其次:只需要去Django官网下载一个Django-1.8.4.tar.gz(版本很多!对于测试漏洞应该用比较早的版本,例如1.5.12!这里作为演示就不去下载别的了!)的压缩包!

官网地址:www.djangoproject.com/download

(1)在linux下解压Django压缩包并安装!命令如下:

解压:tar -zxf Django-1.8.4.tar.gz



进入解压后的文件夹:cd Django-1.8.4/



sudo python setup.py install(如安装不成功说明没有安装python-setuptools:安装如下:apt-get install python-setuptools!)



(2)要创建一个Django项目非常简单,使用startproject命令,输入项目名称: django-admin.py startproject mysite (这是项目名)



(3)Django会在当前目录下自动生成一个名为mysite的文件夹,里面有以下文件:(站点的配置被放在与项目同名的一个app里:mysite)!



(4)创建项目后,在项目文件夹启动Django自带的web服务器: python manage.py runserver Django会自动检查配置文件中的错误,如果全部正常则顺利启动:



(5)访问http://127.0.0.1:8000,如果顺利显示,说明Django已经可以正常使用了。



(6)浏览器访问成功的返回的http请求信息如下:



(7)但现在只有本机可以访问,要让外网能够访问,或是要更换默认的8000端口,可以执行命令: python manage.py runserver 0.0.0.0:8080

这样就将端口修改为8080,且外网也可以通过IP访问本机上的Django。



(8)浏览器演示:(0.0.0.0:8080)



总结:第一个任务是很简单的!这也是简单的让你在脑洞中有个对Django框架有一个初步的认识而已!那么接下来要做的就是靠各位去努力发掘了!

(2)现在去学习做一个个人博客网站咯!

在mysite目录下创建blog应用:python manage.py startapp blog

blog目录如下:



初始化admin后台数据库:

 python 自带SQLite数据库,Django支持各种主流的数据库,这里为了方便推荐使用SQLite,如果使用其它数据库请在settings.py文件中设置。



设置admin应用

admin 是Django 自带的一个后台管理系统。

1、添加blog应用,打开mysite/mysite/settings.py 文件:



在表尾添加blog应用;

2、在我们创建django项目时,admin就已经创建,打开mysite/mysite/urls.py文件:

from django.conf.urls import include, urlfrom django.contrib import admin urlpatterns = [ url(r'^admin/', include(admin.site.urls)),]

3、启动django容器



4、访问后台应用
http://127.0.0.1:8000/admin


设计model(数据库表的设计)

1、设计model

  现在我们打开blog目录下的models.py文件,这是我们定义blog数据结构的地方。打开mysite/blog/models.py 文件进行修改:



2、 再次初始化数据库



3、再次runserver启动服务,访问admin后台,创建文章。

登陆成功选择add 创建博客





设置admin的BlogPost界面:

 打开mysite/blog/models.py 文件,做如下修改:



创建BlogPostAdmin类,继承admin.ModelAdmin父类,以列表的形式显示BlogPost的标题和时间。



创建blog的公共部分

从Django的角度看,一个页面具有三个典型的组件:

一个模板(template):模板负责把传递进来的信息显示出来。

一个视图(view):视图负责从数据库获取需要显示的信息。

一个URL模式:它负责把收到的请求和你的试图函数匹配,有时候也会向视图传递一些参数。

创建模板

在blog项目下创建templates目录(mysite/blog/templates/),在目录下创建模板文件index.html,内容如下:

{% for post in posts %} <h2>{{ post.title }}</h2> <p>{{ post.timestamp }}</p> <p>{{ post.body }}</p>{% endfor%}

创建视图函数:

打开mysite/blog/views.py文件:



blog_list = BlogPost.objects.all() :获取数据库里面所拥有BlogPost对象

render_to_response()返回一个页面(index.html),顺带把数据库中查询出来的所有博客内容(blog_list)也一并返回。

创建blog的URL模式:

在mysite/urls.py文件里添加blog的url:



添加样式:

创建基础模板

在mysite/blog/templates目录里创建base.html的模板:



修改index.html模板,让它引用base.html模板和它的“content”块。



刷新界面:



Django 自称是“最适合开发有限期的完美WEB框架”。本文参考《Django web开发指南》,快速搭建一个blog 出来,在中间涉及诸多知 识点,这里不会详细说明,如果你是第一次接触Django ,本文会让你在感性上对Django有个认识,完成本文操作后会让你有兴趣阅读的相关书籍和文档。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: