Django:ImportError:没有名为 social.apps.django_app 的模块

Posted

技术标签:

【中文标题】Django:ImportError:没有名为 social.apps.django_app 的模块【英文标题】:Django: ImportError: No module named social.apps.django_app 【发布时间】:2015-10-19 05:14:23 【问题描述】:

我有一个在 Windows 7 中创建的应用程序,它运行良好。几天前,我迁移到 Ubuntu 并在 Ubuntu 中复制了项目文件。现在,当我尝试使用 python manage.py runserver 运行项目时,我收到以下错误:

Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
    utility.execute()
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 312, in execute
    django.setup()
  File "/usr/local/lib/python2.7/dist-packages/django/__init__.py", line 18, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/usr/local/lib/python2.7/dist-packages/django/apps/registry.py", line 85, in populate
    app_config = AppConfig.create(entry)
  File "/usr/local/lib/python2.7/dist-packages/django/apps/config.py", line 112, in create
    mod = import_module(mod_path)
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
ImportError: No module named social.apps.django_app

这里似乎有什么问题?我是 Ubuntu 的新手,所以任何帮助将不胜感激。我在 Ubuntu 中安装了与 Windows 中相同版本的 Python 和 Django。

【问题讨论】:

你安装了python-social-auth吗? 【参考方案1】:

看起来你需要在你的 ubuntu 机器上安装一个已经存在于你的 windows 7 环境中的模块。如果您安装了 pip,请在 Windows 和 Ubuntu 上尝试此操作,并查找丢失的软件包

pip freeze

您将在 Windows 环境中看到 Ubuntu 上缺少的某些内容,例如 python-social-auth ——您的修复将在 Ubuntu 上执行类似的操作:

pip install python-social-auth

sudo pip install python-social-auth

【讨论】:

是的,这行得通。我完全忘记在 Ubuntu 中安装 python-social-auth 模块。谢谢!【参考方案2】:

您的项目是否使用虚拟环境?如果是这样,请确保在安装项目依赖项之前已激活它,请在虚拟环境中使用 pip freeze。查看已安装的软件包,如果您不使用它,简单的pip install python-social-auth 应该可以解决您的问题。

对我来说,我可以在我的虚拟环境中看到以下已安装软件包列表(使用 Ubuntu 14.04 和 Python 2.7.6):

(venv)root@ubuntu:/home/ubuntu/test-auth# pip install python-social-auth
(venv)root@ubuntu:/home/ubuntu/test-auth# pip freeze
PyJWT==1.4.0
argparse==1.2.1
oauthlib==1.0.1
python-openid==2.2.5
python-social-auth==0.2.12
requests==2.7.0
requests-oauthlib==0.5.0
six==1.9.0
wsgiref==0.1.2

【讨论】:

【参考方案3】:

social-auth-app-django 是自 they reorganized the code base 以来应该使用的那个。

【讨论】:

以上是关于Django:ImportError:没有名为 social.apps.django_app 的模块的主要内容,如果未能解决你的问题,请参考以下文章

Python3.7 ImportError:没有名为“django”的模块

ImportError:仅在 django 中没有名为“bs4”的模块

Django:ImportError:没有名为'corsheaders'的模块

ImportError:没有名为 django.core.wsgi 的模块

Django 1.8:抛出 ImportError:没有名为“MySQLdb”的模块

django 管理员加载错误:/admin/login/ 处的 ImportError 没有名为后端的模块