Django 搭建blog

1.新建Django项目

eclipse ——》File——》New ——》PyDev ——》PyDev Django Project


如果提示无法找到了Django,请添加Django到Python编译环境中,步骤:

eclipse ——》 window ——》 Preferences ——》 PyDev ——》Interpreter - Python,在弹出对话框的下一个对话框,点击”New Folder“——》 引入解压的Django目录,如:/opt/Django-1.6/django/

如果eclipse无法安装PyDev,或者安装完了找不到PyDev,请安装aptana ,它里面含有PyDev


选择sqlite数据库


如果没有安装,Ubuntu下安装命令:sudo apt-get install sqlite3


2.创建博客模块app

右键项目mysite ——》 Django ——》 Create application (manage.py startup),弹出对话框创建 blog,如下图:



3.测试新建的模块是否正常

右键项目mysite ——》 Run As ——》 PyDev:Django,控制台下打印出:
Validating models...

0 errors found
November 25, 2013 - 05:20:34
Django version 1.6, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.


依照上面提示,在浏览器输入:http://127.0.0.1:8000/,出现如下测试网页:



4.编辑代码

4.1 打开项目mysite/src/blog,修改 blog.models.py

from django.db import models
from django.contrib import admin

# Create your models here.

class BlogPost(models.Model):
    title = models.CharField(max_length=150)
    body = models.TextField()
    timestamp = models.DateTimeField()
    
class BlogPostAdmin(admin.ModelAdmin):
    list_display = ('title', 'body', 'timestamp')
    
admin.site.register(BlogPost, BlogPostAdmin)

4.2 打开项目mysite/src/blog,修改 blog.views.py

from django.shortcuts import render
from django.http import HttpResponse
from django.template import loader, Context
from blog.models import BlogPost

# Create your views here.

def archive(request):
    posts = BlogPost.objects.all()
    t = loader.get_template('archive.html')
    c = Context({'posts':posts})
    return HttpResponse(t.render(c))

4.3 打开项目mysite/src/mysite,修改mysite.setting.py

# Application definition

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog',
)

4.4 打开项目mysite/src/mysite,修改mysite.urls.py

from django.conf.urls import patterns, include, url

from django.contrib import admin
from blog.views import *
admin.autodiscover()

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'mysite.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),

    url(r'^admin/', include(admin.site.urls)),
    url(r'^blog/$', archive),
)

5. 建立样式网页模板

在项目mysite/blog目录下,添加templates文件夹

5.1 在文件夹templates下,添加并编辑archive.html

{% extends "base.html" %}
{% block content %}
{% for post in posts %}
<h1>{{ post.title}}</h1>
<!--<p>{{ post.timestamp|date:"Y-m-d f:s"}}</p>-->
<p>{{ post.timestamp|date:"Y-m-d H:i:s"}}</p>
<p>{{ post.body }}</p>
{% endfor %}
{% endblock %}

5.2 在文件夹templates下,添加并编辑base.html

<html>
<style type="text/css">
body { color: #000000; background: #ffffff; padding: 0 5em; margin:0 }
h1 { padding: 2em lem; background:#f5f5f5 }
h2 { color: #bf8; border-top: 1px dotted #fff; margin-top: 2em }
p { margin: lem 0 }
</style>
<body>
<h1>mysite.example.com</h1>
{% block content %}
{% endblock %}
</body>
</html>

至此,blog项目文件建立完毕,项目结构图如下:



6.同步数据库

右键项目mysite ——》 Django ——》 Sync DB(Manage.py syncdb),出现如下界面:



根据上图提示,依次输入:yes ——》 blog的用户名“admin” ——》 邮箱 ——》 blog用户的密码“123456” ——》 重复密码 “123456”,创建完毕

这里的用户名和密码,在blog管理台需要用到。


7.运行成功

登陆blog管理台,右键项目mysite ——》 Run As ——》 PyDev:Django,启动项目后,在浏览器输入:http://127.0.0.1:8000/admin



登陆用户名和密码是初始化数据库的时候设定的,即步骤6:"admin"和"123456"



8. 发布博客

博客平台搭建完毕,登录到了管理后台,就可以发布博客了,点击上图的“Blog posts” ——》 “Add” 按钮,就可以编辑自己的博客,如下图:



点击“Save”保存按钮后,就发布了自己的博客,然后在浏览器输入:http://127.0.0.1:8000/blog/,就可以看自己刚才发布的博客了,如下图:



一个基于django的简易博客就搭建起来了,很赞吧,O(∩_∩)O




参考推荐:

Django+python+eclipse 快速搭建博客blog

Python Web 框架,第 1 部分(IBM)

Python Web 框架,第2 部分

Python 技术专题推荐


如果提示无法找到了Django,请添加Django到Python编译环境中,步骤:

eclipse ——》 window ——》 Preferences ——》 PyDev ——》

如果没有安装,Ubuntu下安装命令: sudo apt-get install sqlite3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值