Django外部库和应用程序名称冲突

5

我有一个名为'my_app'的Django应用程序。现在添加了一个同名的外部库,需要将其添加到INSTALLED_APPS中。

src
 |
 -- apps
      |
      --- **my_app**


external libraries
         |
          __ **my_app**
               |
                __some_path
                      |
                       __ new_module

Django遵循传统的方式,输出结果。
Error: No module named my_app.some_path.new_module

因为它正在错误的文件夹中查找。

INSTALLED_APPS = (
    ...
    apps.my_app
    my_app.some_path.new_module
    ...
)

注意:在INSTALLED_APPS中应用的顺序不会产生影响。从INSTALLED_APPS中删除apps.my_app也没有任何影响。
当我尝试输入
import my_app

PyCharm自动建议使用“apps.my_app”应用程序。

有没有不重命名应用程序的解决方法?

1个回答

3

准备迎接即将发布的Django 1.7版本,它使用"应用程序注册表"以一种优雅的方式解决了这些应用程序冲突问题。您可以为每个应用程序"设置标签",以便使用不同的名称引用它们。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接