如何在PyCharm中创建多个无端口冲突的Django项目?解决运行与迁移异常
解决PyCharm中多Django项目的端口冲突与运行异常问题
一、创建多个Django项目并避免端口冲突
要在PyCharm里同时运行多个Django项目且互不干扰,核心是端口隔离+环境隔离,具体操作如下:
- 给每个项目指定独立端口:
打开PyCharm的Run > Edit Configurations,找到对应项目的Django运行配置,在Parameters输入框里添加--port 800X(X取不同数字,比如第一个项目用8000,第二个用8001)。这样启动时就会用指定端口,不会争抢默认的8000端口。 - 用独立虚拟环境隔离项目:
创建新项目时,PyCharm会提示你新建虚拟环境(推荐用venv或conda),一定要选“New environment”,不要复用旧的。如果是已有的项目,也可以在右下角的Python解释器选择里,给每个项目单独配置虚拟环境——这样每个项目的依赖、Django版本完全独立,不会互相干扰。 - 命令行启动时指定端口:
如果习惯用终端,直接在项目根目录下运行python manage.py runserver 8001,手动指定端口即可,比图形界面配置更直接。
二、解决你现有Polls和registration项目的异常问题
你遇到的“Polls服务器跳转到registration内容”“迁移不生效”,大概率是运行配置错配或环境/端口冲突导致的,按以下步骤排查修复:
- 检查并修正运行配置
- 打开
Run > Edit Configurations,找到Polls的配置:- 确认
Script path指向的是Polls项目根目录下的manage.py,而不是registration的; Working directory必须是Polls的根目录,不能是其他项目的路径;- 在
Parameters里加上--port 8000,同时给registration的配置加上--port 8001,强制端口分开。
- 确认
- 打开
- 隔离虚拟环境
- 切换到Polls项目的窗口,点击右下角的Python解释器选择框,确认用的是Polls专属的虚拟环境;同理给registration切换它自己的环境。如果之前共用了一个环境,建议删掉旧环境,给每个项目重新创建虚拟环境,再重新安装
django依赖——环境混了是很多奇怪问题的根源。
- 切换到Polls项目的窗口,点击右下角的Python解释器选择框,确认用的是Polls专属的虚拟环境;同理给registration切换它自己的环境。如果之前共用了一个环境,建议删掉旧环境,给每个项目重新创建虚拟环境,再重新安装
- 清理浏览器缓存
- 浏览器可能缓存了之前registration的8000端口地址,导致你访问Polls的端口时自动跳转。试试用无痕模式打开
http://localhost:8000(Polls的端口),或者手动清除浏览器的缓存和Cookie。
- 浏览器可能缓存了之前registration的8000端口地址,导致你访问Polls的端口时自动跳转。试试用无痕模式打开
- 修复迁移失效问题
- 先确保你在Polls的根目录下操作:在PyCharm终端里输入
cd /path/to/your/Polls(换成你自己的Polls路径),然后运行python manage.py makemigrations和python manage.py migrate; - 打开Polls的
settings.py,检查DATABASES配置里的NAME路径,确认是Polls目录下的db.sqlite3,而不是registration的。如果路径错了,改成正确的后再重新执行迁移。
- 先确保你在Polls的根目录下操作:在PyCharm终端里输入
内容的提问来源于stack exchange,提问作者Wisdom
相关产品推荐
相关产品推荐

