使用 Django 和 Python 開發 Web 站點

關於Eclipse上面配置PyDev,請各位讀者自行百度,這裏大鵬哥直接講述一下做完上述工作之後Django的安裝和配置:

首先下載Django安裝包:形如Django-*.*.*.tar.gz (eg. Django-1.1.1.tar.gz)

1 、安裝

解壓Django,我是解壓到python27下,在Django目錄中有個setyp.py文件,打開運行窗口進行安裝。


2 、爲了方便開發,我們再來進行配置系統變量

    path= C:\Python27\Scripts;C:\Python27\Lib\site-packages\django\bin

3、測試Django是否安裝成功

    首先看看C:\Python27\Lib\site-packages\django\bin是否存在,然後創建一個工程

   Django-admin.py startproject djproject

    

    運行manage.py runserver 後,在瀏覽器地址欄中輸入http://127.0.0.1:8000/


     出現以上畫面,即安裝成功

上面創建好djproject模塊,將C:\Python27\Lib\site-packages\django\bin中的djproject目錄拷貝到自己的Eclipse工作目錄中大鵬哥的是(F:\ME85),然後啓動eclipse,點擊“File”->“New”->“project…”,將會看到以下畫面

 

選擇“Pydev Project”,點擊“Next”

 

創建一個與djproject的工程,路徑指向你原生成的工程目錄,Grammar Version選擇2.7的版本,interpreter對應的也要選擇python27,取消系統生成Src目錄,點擊“finish”完成創建,在工程目錄上點右鍵,選擇“Refresh”,你將會到原生成的文件。

 

現在我們來做一些測試,先來建立一個子集


再刷新一下工程目錄


爲了使 Django 認識到新應用程序的存在,還需要向 settings.py 文件中的INSTALLED_APPS 添加一個條目。對於這個職位公告板應用程序來說,我們必須添加字符串 djproject.jobs:


然後到數據庫了,Django 提供了自己的對象關係型數據映射組件(object-relational mapper,ORM)庫,它可以通過 Python 對象接口支持動態數據庫訪問。這個 Python 接口非常有用,功能十分強大,但如果需要,也可以靈活地不使用這個接口,而是直接使用 SQL。

ORM 目前提供了對 PostgreSQL、MySQL、SQLite 和 Microsoft® SQL數據庫的支持。

這個例子使用 SQLite 作爲後臺數據庫。SQLite 是一個輕量級數據庫,它不需要進行任何配置,自身能夠以一個簡單文件的形式存在於磁盤上。

去sqlite官網下載形如sqlite-shell-win32-x86-3080600.zip的文件,解壓即可。

在使用這個模型之前,需要在設置文件中對數據庫進行配置。SQLite 只需要指定數據庫引擎和數據庫名即可。


這個職位公告板應用程序有兩種類型的對象:Location和 Job。Location 包含 city、state(可選)和 country 字段。Job 包含 location、title、description 和 publish date 字段。


使用 manage.py sql 命令查看數據庫模式


爲了初始化並安裝這個模型,請運行數據庫命令 syncdb:

注意,syncdb 命令要求我們創建一個超級用戶帳號。這是因爲 django.contrib.auth 應用程序(提供基本的用戶身份驗證功能)默認情況下是在 INSTALLED_APPS 設置中提供的。超級用戶名和密碼用來登錄將在下一節介紹的管理工具。記住,這是 Django 的超級用戶,而不是系統的超級用戶。


Django 的最大賣點之一是其一流的管理界面。這個工具是按照最終用戶的思路設計的。它爲我們的項目提供了很多數據輸入工具。

管理工具是 Django 提供的一個應用程序。與 jobs 應用程序一樣,在使用之前也必須進行安裝。第一個步驟是將應用程序的模塊(django.contrib.admin)添加到INSTALLED_APPS 設置中:


使管理工具可以通過urls.py使用


這個管理應用程序有自己的數據庫模型,但也需要進行安裝。我們可以再次使用 syncdb 命令來完成這個過程:

    

使用測試服務器來查看管理工具

現在可以使用http://localhost:8000/admin 啓動管理工具,並使用前面創建的超級用戶帳號進行登錄。我們注意到現在還沒有可用的模塊。


要讓一個類可以通過管理工具進行訪問,我們需要爲其創建一個 Admin 子類。然後可以通過爲這個子類添加類屬性來定製如何對每個類進行管理。清單 19 展示瞭如何將 Location 類添加到這個管理工具中。

class Location(meta.Model):

    ...

    class Admin:

        list_display =("city", "state", "country")

 

 

然後再刷新頁面發現如下:

 

然後在jobs下面創建admin.py文件內容如下:

from django.contrib import admin

from jobs.models import Location,Job

 

admin.site.register(Location)

admin.site.register(Job)

更改urls.py中的設置如下:


好,這樣呢再進8000那個界面就會出現如下,輸入前面的那個用戶名和密碼即可進入:

 

Admin界面的漢化也比較簡單將settings.py中的en-us改爲zh-CN即可。漢化後如下:


發佈了56 篇原創文章 · 獲贊 2 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章