Làm cách nào để cài đặt phiên bản cũ của Django trên virtualenv?


87

Điều này nghe có vẻ giống một câu hỏi ngu ngốc, vì mục đích của virtualenvnó chính xác là: Cài đặt một số phiên bản cụ thể của một gói (trong trường hợp này là Django) bên trong môi trường ảo. Nhưng đó chính xác là điều tôi muốn làm, và tôi không thể hình dung được.

Tôi đang sử dụng Windows XP, và tôi đã tạo thành công môi trường ảo và có thể chạy nó, nhưng làm cách nào để cài đặt phiên bản Django mà tôi muốn vào đó? Ý tôi là, tôi biết sử dụng easy_installtập lệnh mới được tạo , nhưng làm cách nào để tôi cài đặt nó Django 1.0.7? Nếu tôi làm vậy easy_install django, nó sẽ cài đặt phiên bản mới nhất. Tôi đã thử đặt số phiên bản 1.0.7vào lệnh này theo nhiều cách khác nhau, nhưng không hiệu quả.

Làm thế nào để tôi làm điều này?

Câu trả lời:


144

Không bao giờ có Django 1.0.7. Loạt 1.0 chỉ tăng lên 1.0.4. Bạn có thể xem tất cả các bản phát hành trong phần thẻ của kho lưu trữ mã Django .

Tuy nhiên để trả lời câu hỏi của bạn, không sử dụng easy_install, sử dụng pip. (Nếu nó chưa được cài đặt, hãy làm easy_install pip, sau đó không bao giờ chạm vào easy_install nữa). Bây giờ bạn có thể làm:

pip install Django==1.0.4

3
Mặc dù pip có một số ưu điểm tốt hơn so với easy_install, "easy_install Django == 1.0.4" sẽ hoạt động tốt trong trường hợp này.
Carl Meyer

1
điều này không còn hoạt động. ít nhất là không dành cho easy_install - nó dẫn đến djangoproject.com/m/bad-installer.txt (và pip dường như bị hỏng đối với python2.4, vốn là thứ tôi đang sử dụng trong virtualenv). yeah, nó sẽ là tốt hơn nếu mọi người sử dụng các phiên bản mới, nhưng một số người trong chúng ta phải duy trì mã cũ ...
andrew Cooke

1
Tôi hỏi một câu hỏi tương tự trong một chú thích bài này , với một phản ứng cho thấy:pip install git+github.com/django/django@1.2.5#egg=django==1.2.5
Dave Everitt

liên kết 'the tags section' đã chết, nhưng bạn có thể tìm thấy các bản phát hành với phiên bản nhỏ tại đây: docs.djangoproject.com/en/2.0/releases, kỳ lạ là tôi không tìm thấy trang này từ tài liệu django. thay thế '2.0' bằng '2.1' trong một số tháng ..
jerome

1
Ngoài ra - để xem tất cả các phiên bản có sẵn mà bạn có thể thực hiện pip install django==(không có số phiên bản).
Frankie Simon

3

+1 trên câu trả lời của người đăng trước: sử dụng pipnếu bạn có thể. Tuy nhiên, tóm lại, cách dễ nhất là cài đặt phiên bản cũ hơn là tải xuống tarball từ trang tải xuống hoặc nếu bạn đã cài đặt subversion, hãy thực hiện một svn exporttrong các bản phát hành bạn muốn (tất cả chúng đều được gắn thẻ ở đây ).

Khi bạn có phiên bản Django bạn muốn, chỉ cần chạy lệnh sau bên trong thư mục django:

python setup.py install

Thao tác này sẽ cài đặt phiên bản Django đó trong virtualenv của bạn.


2

+1 cho các giải pháp đã được đề cập.

Tôi chỉ muốn thêm một giải pháp khác.

Để cài đặt một phiên bản cụ thể của Django (giả sử 1.10.x),

  1. Sao chép repo Django từ Github .

    git clone https://github.com/django/django.git

  2. Đi vào thư mục và kiểm tra chi nhánh cụ thể.

    cd django

    git checkout origin/stable/1.10.x

  3. Chạy lệnh cài đặt.

    python setup.py install

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.