網站項目003

用戶註冊、登錄和登出功能

Pinax裏已經有現成的package來實現註冊、登錄等用戶相關的功能。可以選擇照着自己些,或者將pinaxaccount package複製出來使用,最後就是直接使用Pinax

配置Pinax

下載、解壓pinax。執行:

root@fruitschen-desktop:~/pinax-0.7beta2# python scripts/pinax-boot.py /root/workspace/pinax
root@fruitschen-desktop:~/workspace/pinax# cd /root/workspace/
root@fruitschen-desktop:~/workspace# source ./pinax/bin/activate
(pinax)root@fruitschen-desktop:~/workspace# cd pinax/
(pinax)root@fruitschen-desktop:~/workspace/pinax# pinax-admin clone_project social_project travelsite
(pinax)root@fruitschen-desktop:~/workspace/pinax/travelsite# python manage.py syncdb

出錯,提示PIL有問題,查了一下,系統安裝的已經安裝了PIL,在Python解釋器裏也可以訪問。莫名其妙阿。


解決PIL問題

(pinax)root@fruitschen-desktop:~/workspace/pinax/travelsite# cd ..
(pinax)root@fruitschen-desktop:~/workspace/pinax# pip install http://dist.repoze.org/PIL-1.1.6.tar.gz
……
(pinax)root@fruitschen-desktop:~/workspace/pinax# cd travelsite/
(pinax)root@fruitschen-desktop:~/workspace/pinax/travelsite# python manage.py syncdb

使用這種方式安裝完PIL之後,服務器運行正常。但是老是提示sha模塊已經過期。


啓動服務器的shell腳本

總結起來,source命令用於激活pinax虛擬環境,經過試驗,每次重啓服務器或者其它涉及到manage.py都需要重新激活這個環境。方便起見建立到一個shell文件中:

source ./bin/activate
cd travelsite/
python manage.py runserver

文件保存爲/root/workspace/pinax/start.sh,只要執行就可以啓動服務器了。

Pinax安裝成功 

尋找源代碼

閱讀項目的settingsurls可知,是account package實現了註冊等功能。不過看到travelsite/apps目錄下有aboutfriends_appphotostag_app這幾個packages。找了老半天也沒找到account在哪,最後在pinax/lib/python2.6/site-packages/Pinax-0.7beta2-py2.6.egg/pinax/apps/account/找到了源代碼,作爲一名Python菜鳥,只是聽說過egg,但不瞭解egg爲何物,不知道Pinax項目運行的時候是不是使用的這個account

url看來,pinaxaccount package提供了郵箱管理功能,註冊、登錄、openid登錄功能,修改、重置密碼,時區設置,語言設置,登出。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章