[[PageOutline]]
{{{
#!html
Django
}}}
----
= 【學習動機】 =
* 提供 light-weight 的 web介面給 drbl-virt 使用
* 考量到 python 已經是所有 linux 必備套件 (Django 是基於 python 的網頁框架)
----
= 【Django 測試】 =
== [安裝] ==
* 從 tarball 安裝
{{{
$ tar xzvf Django-1.2.3.tar.gz
$ cd Django-1.2.3
$ sudo python setup.py install
}}}
== [開發環境] ==
* 使用 Eclipse 來開發 (但因 Eclipse 是 for java 的,所以必須再安裝新的套件 !PyDev)
* 打開 Eclipse 新增 "http://pydev.org/nightly" 到您的 Available Softwate Site
* 搜尋 pydev 並安裝
* 安裝後到 "偏好設定" 去設定 python 直譯器 和 函式庫 的路徑
== [使用] ==
=== 1.1 開啟專案 ===
* 使用 django-admin.py 開啟專案
{{{
$ django-admin.py startproject {project_name}
}}}
* 會產生一個目錄,含有 4 個 python script
{{{
$ ls {project_name}
__init__.py manage.py settings.py urls.py
}}}
* 根據官方文件,此 4 份檔案個有其用途
1. __init__.py:一個空的檔案,它會告訴 python 這個目錄將使用到哪些 python package
2. manage.py:一個命令列工具,可以與您的 Django 專案互動
3. settings.py:Django project 的設定檔
4. urls.py:Django project 的 url 的 URL 宣告
* Django 會附帶一個開發用的網頁伺服器 (開發測試用),執行下面指令後會出現提示訊息 (告知您連到 http://127.0.0.1:8000)
* 此網頁伺服器是測試使用,若您的網頁應用程式要正式上線,建議使用正式的網頁伺服器 (ex. Apache, ...)
* 使用不同 port -> python manage.py runserver 8001
* 讓外部 IP 可以連到 -> python manage.py runserver 0.0.0.0:8000
{{{
$ python manage.py runserver
Validating models...
0 errors found
Django version 1.2.3, using settings 'project_1.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
}}}
=== 2.1 開啟 models (模型) ===
* 若網頁應用需要使用到資料庫,則必須先到 setting.py 設定使用的資料庫資訊 (支援 PostgreSQL, MySQL, SQLite3)
----
= 【如何整合到 drbl-virt】 =
----
= 【參考】 =
* [http://www.djangoproject.com/ 官網]
* [http://withdjango.com/readers/resources/ 相關連結]
* 開發環境
* [http://blog.vlku.com/index.php/2009/06/10/djangoeclipse-with-code-complete-screencast/ Django+Eclipse with Code Complete Screencast]
* [http://heather.koyuk.net/refractions/?p=58 Django Development Environment Setup Part 1]
* [http://heather.koyuk.net/refractions/?p=65 Django Development Environment Setup Part 2]
* [http://heather.koyuk.net/refractions/?p=69 Django Development Environment Setup Part 3]
* [http://heather.koyuk.net/refractions/?p=72 Django Development Environment Setup Part 4]
* [http://peach3.nl/blog/2009/02/my-django-development-environment/ My Django development environment]
* 中文資料
* [http://www.openfoundry.org/tw/tech-article/1330 Django 簡介] by !OpenFoundry
* [http://www.openfoundry.org/tw/tech-article/1350 Django 簡介(實作篇)] by !OpenFoundry
* [http://tech.seety.org/python/django_tossug_present.html Django, how to start]
* [http://www.haokanbu.com/story/4925/ Django Hello World]
* [http://blog.ericsk.org/archives/815 用 Python + django 10分鐘內作出一個 blog]
* 開發環境
* [http://www.docin.com/p-56805112.html 利用Eclipse + PyDev開發Django應用程式]
* [http://hi.baidu.com/yobin/blog/item/3c7a39f3f466e555342acc05.html 安装配置Django开发环境(Eclipse + Pydev)]
* [http://ddkangfu.blog.51cto.com/311989/63876 使用Eclipse+PyDev+EclipseHtmlEditor搭建Django开发环境 ]
* [http://geeksun.javaeye.com/blog/494297 django+eclipse的配置]