1. 程式人生 > >Django部落格系統開發小結

Django部落格系統開發小結

提醒:本文最後更新於 2861 天前,文中所描述的資訊可能已發生改變,請謹慎使用。

從最開始的ROR,到後來的CICakePHPThinkPHP等各式各樣的MVC框架用了不少,還是覺得用來開發QuQuBlogDjango框架最吸引人,玩著玩著就上癮了。

記錄下開發過程中的一些點滴:

Python是之前裝的2.6.5,Django用SVN裡的1.3RC,IDE用eclipse+Pydev,資料庫一開始用sqlite,後來改用到mysql。

開發過程中用Django自帶的runserver來啟動web服務,用django-debug-toolbar來分析和優化SQL查詢語句。伺服器上跑的是Apache2+

mod_wsgi,之後可能會換成lighttpd+fastcgi。

部落格使用者系統用的框架自帶的django.contrib.auth,Tag系統用的django-tagging,評論系統用的自帶的django.contrib.comments。

後臺釋出部落格用的TinyMCE這個優秀的web編輯器,參考了這篇文章給編輯器加上了插入<pre>程式碼標籤功能,前臺用SyntaxHighlighter在瀏覽器端高亮程式碼,使用AutoLoader動態引入程式碼高亮檔案。

另外還使用django.core.paginator,結合django模板的自定義標籤擴充套件了一個通用的分頁元件。

通過django.contrib.syndication.views和django.utils.feedgenerator對部落格輸出rss和atom訂閱,下面是全部程式碼:

# -*- coding:utf8 -*-
'''
Created on 2011-3-8

@author: Jerry
'''
from django.contrib.syndication.views import Feed
from django.utils.feedgenerator import Atom1Feed
from django.contrib.sites.models import get_current_site

from
blogs.models import Post class PostRssFeed(Feed): title = u'Jerry Qu \'s 小站' link = 'http://' + get_current_site(None).domain description = u'Welcome to Jerry Qu \'s 小站' author = 'Jerry Qu' def items(self): return Post.objects.get_post().order_by('-pub_date')[:10] def item_title(self, item): return item.title def item_pubdate(self, item): return item.pub_date def item_description(self, item): return item.content class PostAtomFeed(PostRssFeed): feed_type = Atom1Feed subtitle = PostRssFeed.description

展示評論時,參考了Gravatar官方文件獲取使用者頭像,跟之前用的wordpress展示上是一樣的。

從上面可以看出Django的開發效率是有多麼高,基本你能想到的功能都能找到完整的解決方案。但只是使用現成庫不見得是一件好事,好在python大部分庫都是有原始碼的,可以通過閱讀原始碼來了解別人的思路,學習別人程式碼上的優點。

接下來,我還會繼續開發這個部落格系統,Django和Python好玩的東西還有好多,近期會自己實現以下功能:

  • 媒體中心,主要是圖片上傳和管理功能;
  • 新的評論系統,使用Akismet Api過濾垃圾評論;以及郵件通知新評論機制;
  • MetaWeblog Api,可以通過Windows Live Writer客戶端發表部落格。

--EOF--

提醒:本文最後更新於 2861 天前,文中所描述的資訊可能已發生改變,請謹慎使用。

相關推薦

Django部落系統開發小結

提醒:本文最後更新於 2861 天前,文中所描述的資訊可能已發生改變,請謹慎使用。 從最開始的ROR,到後來的CI、CakePHP、ThinkPHP等各式各樣的MVC框架用了不少,還是覺得用來開發QuQuBlog的Django框架最吸引人,玩著玩著就上癮了。 記錄下開發過程中的一些點滴: Pytho

Django部落系統部署小結

提醒:本文最後更新於 2848 天前,文中所描述的資訊可能已發生改變,請謹慎使用。 上次總結了Django部落格系統的開發,這次接著總結程式部署的相關內容。這幾天我折騰了個夠,嘗試各種組合來搭環境,從一開始的Apache + mod_wsgi,之後的Nginx + uWSGI,再後來的Lighttp

django--部落系統--後臺管理

1.後臺管理功能主要實現了,文章的新增與修改,以及富文字的使用 前端頁面 母版 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>{

基於node.js/jquery/bootstrap的部落系統開發---總結

1 express Express 是一個基於 Node.js 平臺的極簡、靈活的 web 應用開發框架,它提供一系列強大的特性,幫助你建立各種 Web 和移動裝置應用。 var express = require('express'); var app =

Django 部落系統------登入註冊功能

一、登入: urls配置:註冊中需要圖片, url(r'^media/(?P<path>.*)$', serve, {'document_root': settings.MEDIA_ROOT}), 登入login只需用auth驗證一下即可,加了

Django開發自己的部落系統

好久之前就想做一下自己的部落格系統了,但是在網上查了查好像是需要會一些Node.js的相關知識,而且還要安裝辣麼多的庫什麼的,就不想碰了。但是我遇到了Django這麼一款神器,沒想到我的部落格系統就這麼建立起來了。雖然是最基礎的型別。但是也算是成功了,這篇部落格

Python利用 Django完整的開發一個部落系統

今天花了一些時間搭了一個部落格系統,雖然並沒有相關於介面的美化,但是釋出是沒問題的。 開發環境 作業系統:windows 7 64位  Django: 1.96  Python:2.7.11  IDE: PyCharm 2016.1 功能篇 既然是部落格系統,釋出的自然是部落格了。讓我們想想,一篇

Django開發部落系統

本系統使用的Django版本是0.96.2,資料庫是Sqlite3,因為它不用配置伺服器,便於開發。 首先建立一個project: django-admin startproject webblog 然後進入webblog目錄,修改settings.py: DAT

Django完整的開發一個部落系統

今天花了一些時間搭了一個部落格系統,雖然並沒有相關於介面的美化,但是釋出是沒問題的。 開發環境 作業系統:windows 7 64位 Django: 1.96 Python:2.7.11 IDE: PyCharm 2016.1 功能篇 既然

阿里雲部署django實現公網訪問 SSH實現遠端控制 linux rhel7下安裝python django初探-建立簡單的部落系統(一) django初探-建立簡單的部落系統(二)

  本博的主要目的是對阿里雲部署django實現公網訪問進行一次簡單的記錄,方便日後查詢。   內容目錄:   (1)申請阿里雲伺服器及安全組配置   (2)實現ssh遠端控制   (3)實現ftp檔案傳輸   (4)安裝python3,在centos下同時使用python2和python3   

django2.0+python3.4實戰開發教程-資訊型部落系統(一)

專案簡介 執行平臺:windows Python版本:3.4 Django版本:2.0 資料庫工具:sqlite 開發工具:Pycharm+sublime-text 寫在開頭:這是我第一次使用Django進行web開發,在此之前並無任何web開發經驗。其中,Django以及htm

Django部落文章頁面開發

一 頁面內容 標題 內容 修改文章按鈕(超連結) 二 URL傳遞引數 引數寫在響應函式中request後,可以有預設值 URL正則表示式:r'^article/(?P<article_id>[0-9]

Django部落主頁面開發

一 頁面概要 部落格主頁面 部落格文章內容頁面 部落格撰寫頁面 二 主頁面內容 文章標題列表,超連結 發表部落格按鈕(超連結) 三 列表編寫思路 取出資料庫中所有文章物件

python 全棧開發,Day81(部落系統個人主頁,文章詳情頁)

一、個人主頁 隨筆分類 需求:查詢當前站點每一個分類的名稱以及對應的文章數 完成這個需求,就可以展示左側的分類 它需要利用分組查詢,那麼必須要會基於雙下劃線的查詢。 基於雙下劃線的查詢,簡單來講,就是用join。將多個表拼接成一張表,那麼就可以單表操作了! 表關係圖 圖中

python 全棧開發,Day80(部落系統分析,部落主頁展示)

一、部落格系統分析 資料庫的構建 首先,我們分析一個部落格系統的功能: 一個部落格可以有多個標籤(多對多) 一個部落格可以有多條評論(一對多) 一個部落格只可以有一個類別(多對一) 接下來,我們分析關係的屬性: 部落格:標題,作者,內容,釋出時間,分類(外來鍵),

python 全棧開發,Day83(部落系統子評論,後臺管理,富文字編輯器kindeditor,bs4模組)

一、子評論 必須點選回覆,才是子評論!否則是根評論點選回覆之後,定位到輸入框,同時加入@評論者的使用者名稱 定位輸入框 focus focus:獲取物件焦點觸發事件 先做樣式。點選回覆之後,定位到輸入框,加入被評論的使用者名稱 給回覆的a標籤加一個class=reply_btn,關

django實戰(二)一個較完整的部落系統

昨天實現了一個簡單的部落格顯示系統,今天實現一個較為完整的部落格系統,當然還未進行完整的介面優化,但是釋出還是可以實現的。 一、資料庫的構建(M) 首先,我們分析一個部落格系統的功能: (1)一個部落格可以有多個標籤(多對多)

Django在OS X下的程式設計實戰(一)構建一個部落系統

廢話少說,直奔主題,你要做事之前需要有一臺電腦,最好是Linux或者OS X,因為我在Macbook pro下工作,所以至少這裡的命令都在OS X下執行通過的。所有程式碼都是單獨一行方便你拷貝。Python程式碼會有>>>的提示,除此之前,沒有特別提示都是

Django部落開發教程,Django快速開發個人blog

學DjangoWEB框架,估計大部分的朋友都是從Blog開發開始入門的,Django中文網釋出了一個Django開發教程,這個教程簡單易懂,能讓你快速的使用Django開發一個漂亮的個人blog,是Django入門首選教程! 教程目錄: 開發前的準備 專案需求分析

基於Django部落系統

基於django的部落格系統, 介面展示 首頁前端介面如下: 文章頁面: 後臺頁面: 文章頁面: ##專案結構圖 程式碼主要檔案結構如下: 分別介紹下各個目錄: accounts: 使用者模組 blog:部落格模組 comments: 評論模組