2012-01-02 55 views
6

Hãy giúp tôi về điều này. Tôi làm điều này trên Fedora 16.Sử dụng virtualenv trong Pycharm như Django IDE

môi trường ảo của tôi là /home/username/Desktop/.pythonenv

Bây giờ, hãy chú ý các dấu chấm. Bởi vì nó là một thư mục ẩn, tôi phải tạo một liên kết tượng trưng để cho Pycharm "nhập" thư mục.

sudo ln -s /home/yeukhon/Desktop/.pythonenv /home/yeukhon/Desktop/sypythonenv 

Bây giờ tôi có thể sử dụng môi trường ảo này. Tuy nhiên, hai vấn đề xảy ra và tôi không chắc chắn nếu một trong những đầu tiên có bất cứ điều gì để làm với thứ hai.

A. Thiếu GTK và GST

Dưới đây là hai ảnh chụp màn hình. Các python virtualenv thiếu GTK và GST ... Tôi không có ý tưởng tại sao.

System PythonVirtualenv

B. Django là không thể nhập cảng trong enviornment này

tôi đã cố gắng để chạy dự án Django của tôi dưới virtualenv (project1) nhưng tôi không thể. Tôi có thể chạy cùng một dự án thông qua Terminal.

[[email protected] ~]$ cd Desktop/djangoapp/project1 
[[email protected] mysite]$ source /home/yeukhon/Desktop/.pythonenv/project1/bin/activate 
(project1)[[email protected] mysite]$ python2.7 manage.py runserver 
# I had to use python2.7 instead of python. That's the only problem with terminal here. 

Câu hỏi

  1. Làm thế nào để làm cho nó runable trong Pycharm với thông dịch Python virtualenv của tôi?

  2. # 1 có liên quan gì đến # 2 không?

  3. Làm cách nào để làm cho GTK và GST xuất hiện trong virtualenv của tôi?

Cảm ơn bạn đã dành thời gian.

Trả lời

4

Trước tiên, không cần tạo liên kết tượng trưng, ​​vì hộp thoại thông dịch thêm thêm có nút 'hiển thị tệp và đạo diễn ẩn' và bạn cũng có thể nhập đường dẫn theo cách thủ công.

Mỗi virtualenv là, kể từ phiên bản 1.7, một môi trường bị cô lập theo mặc định. Điều đó có nghĩa là bạn phải chuyển qua ENV-system-package-pack một cách rõ ràng nếu bạn muốn tự động bao gồm các thư viện hệ thống (trước 1.7 bạn phải chuyển tùy chọn không có gói site nếu bạn muốn một env riêng biệt)

Vì vậy, dự đoán đầu tiên của tôi là bạn chỉ đơn giản là chưa cài đặt các thư viện mà bạn đang thiếu bên trong virtualenv của mình. Kiểm tra đầu ra của đóng băng pip sau khi kích hoạt virtualenv của bạn. Nếu các thư viện đang thiếu, chỉ cần cài đặt chúng với pip:

pip install django

Bây giờ, khi bạn dường như sử dụng python không mặc định cho virtualenvs của bạn, hãy chắc chắn bạn không sử dụng một hệ thống để thay thế. Bạn cũng có thể gọi nó trực tiếp bằng cách sử dụng một trong thư mục/bin của virtualenv của bạn.

+0

Xin chào. Cảm ơn bạn rất nhiều vì đã giúp tôi.Câu hỏi: Đối với điểm thứ hai của bạn, điều đó có đánh bại mục đích của "sự cô lập"? Hoặc tôi nên pip cài đặt gtk và gsk của riêng tôi? Tôi đoán nó là tốt để sử dụng thư viện mặc định sys như virtualenv là hữu ích cho các thư viện non-sys mà tôi sẽ được cài đặt trong tương lai. Cảm ơn. – CppLearner

+0

nó chỉ phụ thuộc vào những gì bạn cần. Có một số thư viện mà mọi người muốn cài đặt qua phân phối của họ, tức là PIL, để họ không phải cài đặt các phụ thuộc để biên dịch chúng. Cá nhân, tôi không sử dụng các gói trang web. – ashwoods

+0

những người khác chỉ cần cài đặt dự án của họ có liên quan libs trong một virtualenv, những người đang bị ràng buộc để thay đổi rất nhiều từ một dự án khác. Tôi thậm chí còn sử dụng pythonbrew để cô lập và quản lý các trình thông dịch python. – ashwoods

Các vấn đề liên quan