2013-10-04 75 views
0

所以我一直在玩我的Ubuntu(12.04)python(2.7.x)和Django框架。我的方式安裝的Django基於項目是使用的virtualenvDjango安裝使用Virtualenv出錯

,我做了這樣的

** FROM TERMINAL ** 
1. sudo apt-get install python-setuptools 
2. sudo easy_install virtualenv 

然後我繼續使用此命令設置我爲我的Django項目目錄:

virtualenv --no-site-packages project-name 

不久後,我激活了我的virtualenv:

source project-name/bin/activate 

然後我繼續使用這種Django框架安裝:

sudo easy_install Django 

,並驗證Django框架通過檢查有一個項目名稱/ bin /目錄下名爲django-admin.py文件我的virtualenv中安裝(這是存在的)。

但是,第二次嘗試按照上述相同的步驟創建另一個django-project(完全不同的)時,我沒有在正確的目錄中安裝django-admin.py。它得到安裝到/ usr/lib中/ Python的...

,當我試圖運行應用程序,我得到這個消息:

Traceback (most recent call last): 
    File "manage.py", line 8, in <module> 
    from django.core.management import execute_from_command_line 
ImportError: No module named django.core.management 

有誰知道爲什麼會出現這種情況?

謝謝。

*編輯的零件*

迴應sachitad的回答

我收到以下消息時,我執行他/她的建議

(project-name)[email protected]:~/Documents/python/project-name$ easy_install django 
error: can't create or remove files in install directory 

The following error occurred while trying to add or remove files in the 
installation directory: 

[Errno 13] Permission denied: '/home/blah/Documents/python/project-name/lib/python2.7/site-packages/test-easy-install-3775.write-test' 

您指定的安裝目錄(通過 - 安裝目錄, - 前綴或 distutils默認設置)爲:

/home/blah/Documents/python/project-name/lib/python2.7/site-packages/ 

這就是爲什麼我最初認爲我需要使用sudo命令。

回答

2

作爲除了sachitad答案,我建議你看看virtualenvwrapper,讓你可以與像命令來管理你輕鬆ENV當前虛擬:

mkvirtualenv your_project_name // create a virtual environment 
workon your_project_name // select this virtual environment 

pip install django // will install in this virtualenv 
+0

我是否需要在此虛擬環境中安裝pip或easy_install? – Jeremy

+0

你可以使用'pip'或者'easy_install'來安裝'virtualenv.'中的python軟件包。我推薦'pip',因爲它比'easy_install'有很多優點。 – sachitad

+0

所以,我實際上放棄了virtualenv - 無站點包,並決定使用你的解決方案。它適用於一些調整(如virtualenvwrapper站點所述)。隊友的歡呼聲。 – Jeremy

3

問題:

sudo easy_install Django 

即使您已激活的virtualenv,而裏面的virtualenv安裝軟件包,永遠使用sudo。如果您使用sudo,則假定您正在系統路徑(/usr/lib/local/..)上進行安裝。

因此,

easy_install django 

OR

pip install django 

應該工作。

+0

嗨請看看我編輯過的問題部分。 – Jeremy

+1

這是他的:)噢,事實證明你的項目目錄裏面沒有寫權限。給寫入權限,你應該沒問題。 'chmod -R u + rw project_name' – sachitad

+0

我收到一堆這樣的消息 chmod:更改'project-name/local'的權限:不允許操作 當我做了ls -l時,這就是我get drwxr-xr-x 6 root root 4096 Okt 4 13:45 project-name – Jeremy

0

./home/user/path_to_virtual_env_project_/bin/pip安裝Django

你稱之爲不在虛擬環境中的pip。 它似乎激活不起作用。