Archive

‘Python’ 分類過的Archive

設定Apache上跑Django需要注意的幾個小設定

2011年12月2日 尚無評論

在Apache上的部份幾幾乎乎都用設的就行了

但為了整體安全及效能,還是要把幾個小地方設定做一下

這裡我記錄還記得的部份…….

Apache相關的:

檔案:/etc/apache2/conf.d/security

ServerTokens Full

TraceEnable On

檔案:/etc/apache2/ports.conf

NameVirtualHost *
Listen 80
檔案:/etc/apache2/apache2.conf

Timeout 300
KeepAlive Off
<ifmodule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients          150
    MaxRequestsPerChild   2000
</ifmodule>
<ifmodule mpm_worker_module>
    StartServers          4
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      50
    MaxClients          250
    MaxRequestsPerChild   0
</ifmodule>

#若有 mpm_event_module
#整個mark掉,因為說是過時的東西@@?!
<files ~ "^\.ht">
    Order allow,deny
    Deny from all
    #Satisfy all   #這個不要?!
</files>

設定mod_wsgi:

檔案:/etc/apache2/mods-available/wsgi_module.load

LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so
WSGIPythonOptimize 2

設定site:

檔案:/etc/apache2/sites-available/site

WSGIDaemonProcess site user=www-data group=www-data processes=4 threads=1 display-name=site
WSGIProcessGroup site

WSGIScriptAlias / /path/to/django.wsgi

ServerSignature Off   #不想在錯誤時出現host的資料
Categories: Python, uBuntu Tags: ,

Django aggregation tutorial

2011年11月24日 尚無評論

之前搞不太懂Django的Group by來求Sum, Count之類的

後來看了這篇就清楚多了

 

Django aggregation tutorial

 

Categories: Python, 程式設計 Tags:

[轉載] Python datetime / time conversions

2011年11月22日 尚無評論

有關python對日期/時間的轉換,找到一個文章~~~~筆記!!!

來源:Python datetime / time conversions

閱讀全文…

Categories: Python, 程式設計 Tags:

Django Admin Site自定filter list及queryset

2011年6月30日 尚無評論

正好做到一個管理的系統,admin後台針對內容的編輯需要分權管理
也就是一個model admin 右側的filter要依照不同群組來顯示
且list的列表內容也需區隔

一般是會在admin.py中加上list_filter,但要是得依特殊條件,就得用上這個方法了

群組:

右側選項:

side choices: superuser
side choice: legal group
side choice: other group


底下是程式碼片斷

閱讀全文…

Categories: Python Tags:

使用South在Django上修改資料表結構

2011年6月20日 尚無評論

在這裡整理一下在django中,若修改model如何更新到資料庫

(目前的環境是python 2.6 + django 1.3 + mysql)

首先,得安裝 South 這一套工具
安裝方式參考 這裡

我的安裝方式就是

$ pip install -E . south

安裝好之後,在專案的setting.py裡,把 ‘south’ 加在 INSTALLED_APPS

不過還得要再專案下,執行 syncdb,他會建立 south_migrationhistory 這個資料表,以記錄日後要更新的 model 名稱及各個更新版本

接著到專案根目錄底下,執行底下指令初始化指定的app

$ ./manage.py convert_to_south <app_name>

之後,只要修改過model,就再執行

./manage.py schemamigration <app_name> --auto

他會整理出需要修改的結構檔在 的目錄下,資料夾名稱就是 migrations

然後就可以執行

$ ./manage.py migrate <app_name>

他就會依照最新修改的model更新資料表結構

若要觀察有哪些修正檔,可執行:

$ ./manage.py migrate --list
Categories: Python Tags: