A. 關於macdjango在哪裡的信息
導讀:今天首席CTO筆記來給各位分享關於macdjango在哪裡的相關內容,如果能碰巧解決你現在面臨的問題,別忘了關注本站,現在開始吧!
一.下載Django
如果電腦沒安裝python,點擊這里。然後從這里下載Django穩定版本。
或者執行命令下載Django最新版本:gitclone
這里我用的是Mac自帶的python2.7,下載是最新版本的Django後發現python2.7版本需要升級,但是注意,對iOS開發者來說,最好不要升級python2.7到python3,因為Xcode只支持最穩定版的python2.7腳本。所以這里我下載的Django版本是1.6.1。
二.安裝Django
cdDjangosudopythonsetup.py.install
Python默認在/Library/Python/2.7中,那麼無論如何你在哪裡安裝完DJango,都會在/Library/Python/2.7/site-packages中生成一個django的文件夾。如果要刪除django,只需要把該目錄下的django文件夾刪除即可。
三.測試LocalHost是否成功
sudomkdir~/Djangodemo
/*創建一個用於測試Localhost的網站樣例*/
sudodjango-admin.pystartprojecttestLocalHost
cdtestLocalHost
pythonmanage.pyrunserver
瀏覽器打開,成功的話你將會看到Django的簡單的成功頁面
說明:django-admin.py在我們安裝完Django之後除了在site-packages中生成django文件夾之外(裡面都是一些DJango命令的一些文件和代碼),在/usr/local/bin/中也生成了一個名為django-admin.py的鏈接,這樣無論你在何種路徑下都可以直接調用django-admin.py文件了。在Win下我們稱這個過程為:加入到環境變數。
四.文件結構
1.創建mysite工程
刪除原來的LocalHost工程,創建mysite工程,執行命令:$mkdirmysite
$django-admin.pystartporjectmysite
此時的目錄結構如下:
mysite/
mysite/
__init__.py
settings.py
urls.py
manage.py
2.manage.py
作用:
把該工程的包加入了sys.path;以後你可以直接在你的代碼中引用該工程中其他的包。
載入DJANGO_SETTINGS_MODULE,指明該工程的配置文件是mysite/settings.py。
最主要的是它包裹了django-admin.py的一些函數,讓你可以通過它來操作整個工程。
3.__init__.py
嚴格意義上講__init__.py不屬於DJango的范疇,而是Python語言的一種習慣,經常為空文件。主要是告訴工程這是一個包(Package),防止不經意間因為包名為諸如String之類的字元串而引起的混亂,當然你也可以在裡面加一些初始化的函數,但不在我們的討論之列。
4.settings.py
此前我們提到了manage.py的第二件工作便是指定了它是工程的配置文件,那它配置了些什麼呢?代碼量在其他幾個文件中屬於比較多的,有一百行的樣子,主要設置了關於資料庫,後台管理等配置,等到我們要用的時候再詳細說明。
5.urls.py
它負責把客戶的請求翻譯成函數調用。是重要要掌握的文件。
DJango通過settings.py中指定的URLconf參數找到對應的urls.py文件,此例中正好為我們的這個文件。
DJango在urls.py中找到urlpatterns變數。
DJango收到一個客戶地址請求,我們不妨設為localhost。
DJango在urlpatterns中順序遍歷正則式,找到第一個匹配,調用該正則式對應的函數。
該函數返回客戶端所請求的內容。
對開發者來說,真正需要關心的是如何完成正則表達式和對應函數的對應。如下面例子:
123
urlpatterns=patterns("",url(r'^$','hello.views.home'),)
說明:其中url裡面左半部分是正則式,右半部分是函數調用。r說明是raw匹配,表明正則表達式要求每個字元都必須被匹配,是一個可選項,如果不能理解可以省略。^表示匹配開始,$表示匹配結束。所以這個正則表達式匹配了空字元,正好符合地址為localhost的客戶請求(DJango收到的請求會自動省略域名,即localhost,即真正的請求字元串為空)。右側表明腰調用名為hello的app的views.py文件的home函數。
6.增加helloapp
剛才我們在url匹配的時候調用了home函數,此時我們就開始創建它:
pythonmanage.pystartapphello
這樣我們在manage.py同級目錄下生成了hello目錄,進入hello目錄其他文件都不用管,也不需要理解,直接打開views.py編輯成如下樣子:
fromdjango.httpimportHttpResponse
defhome(request):
returnHttpResponse("HelloWorld")
啟動伺服器。其實hello相當於是一個app應用被添加進了mysite工程,當特定的請求到來時通過url匹配調用相應app下的views.py中的函數來達到不同的顯示效果。
五.Django-URL解析和匹配
1.patterns()函數
patterns函數的的原型:
patterns(prefix,pattern_description,...)
其中prefix表示函數調用的前綴,而pattern_description則是一系列的元組。舉例說明prefix的作用:
urlpatterns=patterns("hello.views",
url(r'^$','home'),
)
上例和上例的執行效果一樣,都表明了helloapp下的views文件里的home函數。注意:前綴末尾不必包含「.」;另外因為python函數規定參數不能多於255個,因此如果你的映射關系很多,可以利用諸如:urlpatterns+=patterns(…)這種形式累加。
2.url()函數
url函數的原型:
1
url(regex,view,kwargs=None,name=None,prefix='')
其中後三項是可選項,在我們的例子中:regex=」r』^$'」;view=」hello.views.home」;name項給該url命名,這在未來通過name反向確定url有很大的作用;kwargs則傳遞額外的參數;prefix和此前的prefix作用一致,不過只適用這一條url。
3.通過url傳遞信息
DJango在通過url傳遞參數時有兩種方式,一種通過位置,一種通過關鍵詞。我們先看第一種,改此前的映射關系如下:
1
url(r'^(d{4})/(d{2})$','hello.views.home'),
修改hello/views.py,增加兩行代碼如下:
defhome(request,year=',month=༼'):
returnHttpResponse("HelloWorld"+year+""+month)
這樣當用戶請求locahost:8000/2015/5時候,相當於在調用home(request,『2015』,』5』),注意此時year和month的相對關系,因為參數傳遞是基於位置信息的,第一個是4個數字是年,第二個2個數字是月。
下面是第二種,即關鍵詞方式,我們修改兩個文件如下:
#mysite/urls.py
url(r'^(?Pd{4})/(?Pd{2})$','hello.views.home'),
#hello/views.py
#注意year和month的位置
defhome(request,month=༼',year='):
returnHttpResponse("HelloWorld"+year+""+month)
MacOS如何安裝Django?求詳細的安裝步驟與指南,網上的教程好復雜,看不懂!其實很簡單,下載django的安裝文件,然後解壓縮,然後用命令行cd到解壓縮出來文件的目錄,執行pythonsetup.pyinstall即可
怎麼看Django安裝在哪裡了
在linux直接使用終端。然後調用python解釋器。
python出現後輸入下列語句查看django版本,如果沒有安裝django,那麼當你importdjango就會出錯。
importdjango
printdjango.VERSION
下面是我windows下面的輸出:
(1,3,1,'final',0)完。
結語:以上就是首席CTO筆記為大家介紹的關於macdjango在哪裡的全部內容了,希望對大家有所幫助,如果你還想了解更多這方面的信息,記得收藏關注本站。
B. 求Mac下Python路徑的手動設置方法, 謝謝.
Mac 下Python 可以多版本的並存,並且python的目錄也有好幾個,不過總體來說,Mac 自帶的有python 還是比較方便的
Mac 系統自帶的又Python ,可能Python版本需要更新,所以目錄結構要了解下
系統自帶的Python的路徑
在mac 系統自帶的程序都會在library下查看
前往文件夾 /Lib (資源庫)
系統自帶的Python 路徑為:
/Library/Frameworks/Python.framework/Versions/2.7
當前的版本是2.7.6目錄結構和Windows相似這里說下bin,lib
bin目錄,就相當於主程序的目錄
lib目錄,就是python程序模塊的目錄
系統自帶python的安裝模塊包路徑
在lib目錄下python2.7,有個 site-packages 這個包裡面的模塊都是通過
python setup.py install
這個python 命令安裝的模塊
如果系統自帶的python 使用pip,或者easy_install 安裝過模塊,那麼會看到lib (資源庫)目錄下多了一個python 的文件夾
例如:
/Library/Python/2.7/site-packages
在這個 site-packages 這個包裡面的模塊都是通過
pip install xxxxxx
這個pip 命令安裝的模塊
使用brew 安裝的python
Mac 有個強大的brew 工具,類似apt-get,使用它可以安裝一些系統的模塊,同樣可以更新安裝python
使用brew 安裝的都會存在路徑:/usr/local
同樣使用brew 安裝的python路徑如下:
/usr/local/Frameworks/Python.framework/Versions/
ps:
/usr/local/ 這個文件夾 相當於本地用戶的系統文件夾
C. mac 下怎麼安裝python 搭建開發環境
一. 安裝python
mac系統其實自帶了一個python的執行執行環境,用來運行python還行,但是開發可能就不夠了,因此我們需要重新安裝python。這里有兩種方案安裝:
1.homebrew
brew install python
這個方案比較簡單,如果出錯的話可以給前面加sudo試試,這個安裝的python可能不是最新版.
2.從官網下載安裝
大家可以從https://www.python.org/download下載安裝最新版的python,安裝比較無腦,一路按下去就OK,缺點是以後升級,卸載都得自己維護.
這兩個方法安裝的python的位置是不一樣的,大家可以用:
which python
來查看安裝位置.安裝完成後在終端中鍵入python來驗證安裝是否成功.
二. 安裝pip
這里好多文章中說要先安裝easy_install, 其實是不用的.
1.我們先獲取pip安裝腳本:
wget https://bootstrap.pypa.io/get-pip.py
如果沒有安裝wget可以去這里將所有內容復制下來,新建get-pip.py文件,將內容拷進去就OK了.
2.安裝pip
sudo python get-pip.py
用python執行剛才獲取的腳本,這里sudo可以選擇使用,若遇到類似這個報錯則必須加sudo:
Exception:
Traceback (most recent call last):
...
OSError: [Errno 13] Permission denied: 'XXX/pip-0.7.2-py2.7.egg/EGG-INFO/dependency_links.txt'
Storing debug log for failure in /Users/bilt/.pip/pip.log
安裝成功後可以在終端中鍵入pip來檢測,如果不行重啟終端後嘗試.
3.修改pip源
在天朝,由於功夫網的原因,使用pip安裝一些模塊會特別慢甚至無法下載,因此我們需要修改pip的源到國內的一些鏡像地址,特別感謝國內無私奉獻的組織~
首先進入HOME路徑:
cd ~
創建.pip目錄:
mkdir .pip
創建pip.conf文件:
touch pip.conf
大家可以用自己喜歡的編輯器打開pip.conf文件,我現在使用的時v2ex的源,所以添加:
[global]
index-url = http://pypi.v2ex.com/simple
大家可以把index-url的值設置為自己實際源的地址.
至此pip源修改成功,以後使用pip安裝模塊時都會從這個源去下載安裝,大家可以自行測試一下.
三. 其他模塊安裝
1.Pillow/PIL
想用python處理圖片,自然少不了PIL這個模塊, 由於PIL長期沒有更新了, 所以有了Pillow這個模塊, 依賴於PIL, 新版的pip安裝後會自帶Pillow, 但是好像沒有zlib模塊, 所以會報錯:
File "/Library/Python/2.7/site-packages/PIL/Image.py", line 1105, in paste
im.load()
File "/Library/Python/2.7/site-packages/PIL/ImageFile.py", line 190, in load
d = Image._getdecoder(self.mode, d, a, self.decoderconfig)
File "/Library/Python/2.7/site-packages/PIL/Image.py", line 389, in _getdecoder
raise IOError("decoder %s not available" % decoder_name)
IOError: decoder zip not available
因此我們需要手動重新安裝:
sudo pip install -U Pillow
2.MySQLdb
在下面的網址下載mysqldb模塊:
http://sourceforge.net/projects/mysql-python/
在mac os x直接雙擊解壓,命令行進入解壓後的目錄, 執行python setup.py build
如果有
sh: mysql_config: command not found
提示,我們需要編輯下mysql的路徑,使用vim打開setup_posix.py
找到:
mysql_config.path = "mysql_config"
改為:
mysql_config.path = "/usr/local/mysql/bin/mysql_config"
然後執行:
sudo python setup.py install
安裝成功後,在命令行輸入python進入python環境,輸入import MySQLdb,我的環境中報下面的錯誤:
>>> import MySQLdb
Traceback (most recent call last):
File "<stdin>", line 1, in <mole>
File "MySQLdb/__init__.py", line 19, in </mole><mole>
import _mysql
ImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib
Referenced from: /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so
Reason: image not found
解決方法,我們建立一個軟鏈就可以了
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
這樣我們就在mac os x的python環境下安裝好了MySQLdb模塊