当前位置: 首页 > 知识库问答 >
问题:

Django没有名为“main”的模块

后易安
2023-03-14

我在我的电脑上做一个Django项目,然后我创建了一个名为“register”的应用程序,当我试图运行manage时,我遇到了一个奇怪的错误。py runserver:im使用Python 3.8.3。当我添加表单进行注册时,会发生此错误。

  File "manage.py", line 21, in <module>
    main()
  File "manage.py", line 17, in main    
    execute_from_command_line(sys.argv)
  File "C:\Python38\lib\site-packages\django\core\management\__init__.py", line 401, in execute_from_command_line
    utility.execute()
  File "C:\Python38\lib\site-packages\django\core\management\__init__.py", line 377, in execute
    django.setup()
  File "C:\Python38\lib\site-packages\django\__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "C:\Python38\lib\site-packages\django\apps\registry.py", line 91, in populate
    app_config = AppConfig.create(entry)
  File "C:\Python38\lib\site-packages\django\apps\config.py", line 116, in create
    mod = import_module(mod_path)
  File "C:\Python38\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'main'

我的设置。py:

DEBUG = True


ALLOWED_HOSTS = ['*']

SETTINGS_PATH = os.path.dirname(os.path.dirname(__file__))
# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'simple2',
    "crispy_forms",
    'main.apps.MainConfig',
    'register.apps.RegisterConfig',
    'register'
]
...


共有1个答案

皇甫学海
2023-03-14

我猜想您没有配置WSGI应用程序,因为Django的应用程序引擎在名为main的文件中查找一个html" target="_blank">变量。py。这里有两种方法可以让你看到这一点:

包括WSGI应用程序

您仍然可以创建名为main的文件。py,包括一个app变量。您不需要编写任何东西,只需导入它(假设您的项目名称是projekt):

from projekt.wsgi import main as app

添加自定义入口点

与Google的AppEngine一样:

入口点:可选。应用程序启动时执行的命令。要使应用程序接收HTTP请求,入口点应包含一个命令,该命令启动web服务器,该服务器侦听端口环境变量指定的端口。如果您没有指定入口点,App Engine将配置并启动Gunicorn Web服务器。

默认值和您的需要之间的比较:

# default
entrypoint: gunicorn -b :$PORT main:app
# What you need
entrypoint: gunicorn -b :$PORT demosite.wsgi:main

更多信息请点击此处。参考

 类似资料:
  • 问题内容: 尝试从命令行运行Django时出现以下错误。 关于如何解决这个问题的任何想法? 问题答案: 听起来你没有安装django。你应该检查此命令生成的目录: 看那里是否有django软件包。 如果站点软件包内没有django文件夹,则说明你没有安装django(至少对于该版本的python)。 可能你安装了多个版本的python,而django位于另一版本中。如果键入python然后按TAB

  • 问题内容: 我已通过将Django部署到。从Apache托管时,Django运行良好。但是,我试图通过进行一些维护,但是当我尝试运行它时,出现错误消息: 错误:无法导入设置“ myproject.settings”(在sys.path上吗?):没有名为设置的模块 Django似乎忽略了DJANGO_SETTINGS_MODULE环境变量。 为了确认我没有发疯,我注释掉了manage.py中除imp

  • 问题内容: 我正在尝试使用apache和mod_wsgi在我的linode服务器上部署Django应用程序。 当我访问/的网站时,出现此 错误 : 我无法正常工作。有想法吗? 问题答案: 要么改变你所有的模块/包项进口排除项目名称,或把在为好。

  • 问题内容: 我正在使用centos linux。 我有Django的python 2.6,现在我升级到了python 2.7。 Python 2.6位于/usr/lib/python2.6中。 Python 2.7位于/usr/local/lib/python2.7中。 它们都具有site-packages目录,并且都包含django 1.2。 如果我运行python,我将获得2.7版本。 我的问

  • 我读了很多文章,但仍然不知道我遗漏了什么。我正在运行一个来自virtualenv的django网站。这是我的配置文件。网站地址被替换为 配置 这是我的WSGI。py文件,没有任何更改,以前从未更改过 Python版本 我的virtualenv python版本是3.9。5默认的Google VM python版本是3.6。9 Python安装库 我安装了apache modwsgi以及 错误日志文

  • 问题内容: 我看到很多这些错误。我已经尝试了所有我想做的事情,但还没有弄清楚。 我正在开发运行python 2.5和Django 1.3的开发服务器。在解压缩tar.gz下载文件后,使用python setup.py install安装了Django 1.3。 一切正常,我很少需要运行,但是尝试使用新的应用程序,并且遇到了问题。 好的,所以我有PATH问题。 从Django安装程序中,我再次检查目