0

我在 Eclipse 中安装了 pydev/django,它运行良好。但是,在将第二个 django 项目添加到 Eclipse 并运行服务器('http://127.0.0.1:8000')之后,即使我运行 project1,pythonpath 似乎也卡在了 project2 上。

总结一下,我有两个 django 项目:project1、project2。当我为 project1 运行 django 服务器时,我得到:

Validating models...

0 errors found
Django version 1.5, using settings 'project1.settings'
Development server is running at 'http://127.0.0.1:8000/'
Quit the server with CTRL-BREAK.

以上似乎表明 django 正在使用正确的设置文件;但是,当我转到“http://127.0.0.1:8000/”时,它会显示来自 project2 的网址。此外,如果我转到“http://127.0.0.1:8000/admin”,模型也会从 project2 中的 sqlite.db 文件中提取出来。我什至尝试从 Eclipse 中完全删除 project2,现在在 'http://127.0.0.1:8000/admin' 我收到此错误:

Python 路径:
['C:\Users\Brad\workspaces\In Progress\project2', 'C:\Users\Brad\workspaces\In Progress\project2', 'C:\Python27\DLLs', 'C:\Python27 \lib', 'C:\Python27\lib\plat-win', 'C:\Python27\lib\lib-tk', 'C:\Python27', 'C:\Python27\lib\site-packages', 'C:\Windows\system32\python27.zip']

如果我使用 project1 在不同的端口上运行服务器,则路径似乎很好:runserver 7000 --noreload

然后 'http://127.0.0.1:7000/' 使用 project1 的路径,但似乎我不应该这样做。

注意:我已经尽可能正确地设置了运行配置。在主选项卡中,项目和主模块都指向正确的项目(project1),并且“将在运行中使用的 PYTHONPATH:”包括 project1。此外,我已清除浏览器历史记录、cookie 以及 chrome 允许我删除的所有内容。

4

1 回答 1

0

问题似乎是您正在使用自动重新加载功能(在这种情况下,您正在终止 eclipse 上的进程,但生成的进程在该端口中仍然存在)。因此,您必须手动转到任务管理器(如果在 Windows 上)并终止子进程。

您应该在不使用自动重载的情况下使用它,或者按照以下步骤操作:http: //pydev.org/manual_adv_django.html(在页面末尾)让自动重载为子进程生成一个终端,以便您知道它还活着。

我之前在 Django 中打开了一个关于该问题的错误:https ://code.djangoproject.com/ticket/16982 ,似乎有人在https://code.djangoproject.com/ticket/19137提供了一个补丁来修复它

于 2012-12-16T23:45:13.897 回答