【问题标题】:WIth PyCharm, why is the PYTHONPATH when running a Django project different from when running the manage.py syncdb task?使用 PyCharm,为什么运行 Django 项目时的 PYTHONPATH 与运行 manage.py syncdb 任务时的 PYTHONPATH 不同?
【发布时间】:2011-07-07 12:44:59
【问题描述】:

默认情况下不应该一样吗?如果没有,有没有办法解决这个问题,以便使用相同的 PYTHONPATH?

【问题讨论】:

    标签: python django pythonpath pycharm syncdb


    【解决方案1】:

    这可能不是理想的解决方案,但它确实有效,并且得到了我老板的帮助。

    修改 pycharm 的 django_manage.py,在顶部插入以下代码,在所有现有代码之前。 django_manage.py 可以在 [PyCharm 安装目录]/helpers/pycharm/django_manage.py 中找到。

    import site
    import sys
    
    # Add the locations missing from PYTHONPATH when running a manage.py task here.
    ALLDIRS = [
        r'C:\git_repos\src\dev\common\py',
        r'C:\git_repos\src\dev\main_website',
    ]
    
    # Remember original sys.path.
    
    prev_sys_path = list(sys.path)
    
    # Add each new site-packages directory.
    
    for directory in ALLDIRS:
        site.addsitedir(directory)
    
    # Reorder sys.path so new directories at the front.
    
    new_sys_path = []
    for item in list(sys.path):
        if item not in prev_sys_path:
            new_sys_path.append(item)
            sys.path.remove(item)
    sys.path[:0] = new_sys_path
    

    【讨论】:

      【解决方案2】:

      您是否在“设置”>“Python 解释器”中为您的项目选择了正确的 Python 安装?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-11-12
        • 2013-06-06
        • 1970-01-01
        • 2019-05-19
        • 2013-02-17
        • 1970-01-01
        • 2013-01-09
        相关资源
        最近更新 更多