pycharm利用pipenv創建低版本或者指定版本django項目


背景說明:

Django到目前,版本已經出到了3.1,但是此時,大多數還在使用2.x,甚至還有1.x版本的。

我想使用目前穩定長期支持的2.x系列,但是我用pycharm創建django項目時,它老是給我安裝最新的3.1版本,雖然可以在界面上卸載並安裝我指定的版本,但是已經生成的django項目文件是3.1版本生成出來的,文件部分內容已經跟低版本創建出來的有不同,保守起見,我還是想用2.x版本創建出我熟悉的項目文件,那么就得自己先准備好環境(指定好2.x版本的django),然后再用pycharm去open這個項目,調整一下配置即可。

 

解決方法:

方法1. 在本地環境中先裝好2.x版本的django,然后pycharm新建項目的時候選擇本地環境,pycharm檢測到本地有django,就不會去下載最新的版本了;

方法2. 准備好虛擬環境,在虛擬環境中安裝好2.x版本的django,並在虛擬環境中手動創建好project或者包括app,然后在用pycharm打開這個項目,並在界面上選擇一下環境,就完事了;

說明:方法1比較簡單,這里記錄一下方法2的操作流程

 

操作環境:

MacOS  【跟Linux下的命令行幾乎一樣;Windows 使用終端運行,也差不多】

 

具體步驟:

1. 要創建虛擬環境,那么就要安裝能夠創建虛擬環境的工具,這里采用pipenv

pip3 install pipenv

 

2. 找一個目錄創建一個工程文件夾project1

/Users/adrian/Documents/django
adrian@xxxMacBook-Pro django % ls -l
adrian@xxxMacBook-Pro django % mkdir project1

 

3. 進project1目錄創建虛擬環境

adrian@xxxMacBook-Pro django % cd project1
adrian@xxxMacBook-Pro project1 % pipenv install
Creating a virtualenv for this project…
Pipfile: /Users/adrian/Documents/django/project1/Pipfile
Using /usr/local/bin/python3 (3.8.5) to create virtualenv…
⠴ Creating virtual environment...created virtual environment CPython3.8.5.final.0-64 in 288ms
  creator CPython3Posix(dest=/Users/adrian/.local/share/virtualenvs/project1-2AECiQAe, clear=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/adrian/Library/Application Support/virtualenv)
    added seed packages: pip==20.2.1, setuptools==49.2.1, wheel==0.34.2
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator

✔ Successfully created virtual environment!
Virtualenv location: /Users/adrian/.local/share/virtualenvs/project1-2AECiQAe
Creating a Pipfile for this project…
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Updated Pipfile.lock (db4242)!
Installing dependencies from Pipfile.lock (db4242)…
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 0/0 — 00:00:00
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.

 

3. 激活這個虛擬環境並在里面安裝django 2.x版本

adrian@xxxMacBook-Pro project1 % pipenv shell
Launching subshell in virtual environment…
 . /Users/adrian/.local/share/virtualenvs/project1-2AECiQAe/bin/activate
adrian@xxxMacBook-Pro project1 %  . /Users/adrian/.local/share/virtualenvs/project1-2AECiQAe/bin/activate
(project1) adrian@xxxMacBook-Pro project1 % pip3 list
Package    Version
---------- -------
pip        20.2.1     //此時該虛擬環境沒有django
setuptools 49.2.1
wheel      0.34.2 (project1) adrian@xxxMacBook-Pro project1 % pip3 install django==2.2.15
Collecting django==2.2.15
  Using cached Django-2.2.15-py3-none-any.whl (7.5 MB)     //我之前裝過,有緩存,直接二次利用了
Collecting pytz
  Using cached pytz-2020.1-py2.py3-none-any.whl (510 kB)
Collecting sqlparse>=0.2.2
  Using cached sqlparse-0.3.1-py2.py3-none-any.whl (40 kB)
Installing collected packages: pytz, sqlparse, django
Successfully installed django-2.2.15 pytz-2020.1 sqlparse-0.3.1 (project1) adrian@xxxMacBook-Pro project1 % pip3 list
Package    Version
---------- -------
Django     2.2.15    // 再次查看,顯示了安裝好的版本
pip        20.2.1
pytz       2020.1
setuptools 49.2.1
sqlparse   0.3.1
wheel      0.34.2 (project1) adrian@xxxMacBook-Pro project1 % exit
adrian@xxxMacBook-Pro project1 %

 

4. 創建django項目

adrian@xxxMacBook-Pro project1 % pipenv run django-admin startproject blogproject

 

5. 創建應用

adrian@xxxMacBook-Pro project1 % cd blogproject
adrian@xxxMacBook-Pro blogproject % ls -l
total 8
drwxr-xr-x  6 adrian  staff  192  8 11 13:14 blogproject
-rwxr-xr-x  1 adrian  staff  631  8 11 13:14 manage.py
adrian@xxxMacBook-Pro blogproject % pipenv run python3 manage.py startapp blog
adrian@xxxMacBook-Pro blogproject % ls -l
total 8
drwxr-xr-x  9 adrian  staff  288  8 11 13:18 blog     // 應用創建好了
drwxr-xr-x  6 adrian  staff  192  8 11 13:14 blogproject
-rwxr-xr-x  1 adrian  staff  631  8 11 13:14 manage.py

 

6. 查看文件結構

adrian@xxxMacBook-Pro blogproject % tree
.
├── blog
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── migrations
│   │   └── __init__.py
│   ├── models.py
│   ├── tests.py
│   └── views.py
├── blogproject
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── manage.py

 

7. 用pycharm打開該django項目

 

 

8. 添加解釋器(點擊右側齒輪按鈕添加)

 

 

9. 找到對應的解釋器后,系統自動加載出虛擬環境中的包及其版本號

 

 接下來就可以愉快的使用pycharm完善django項目了...

 

結束


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM