Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
【;Django×;谷歌应用程序引擎&x3011;没有名为';MySQLdb' ;部署时_Django_Google App Engine_Dialogflow Es - Fatal编程技术网

【;Django×;谷歌应用程序引擎&x3011;没有名为';MySQLdb' ;部署时

【;Django×;谷歌应用程序引擎&x3011;没有名为';MySQLdb' ;部署时,django,google-app-engine,dialogflow-es,Django,Google App Engine,Dialogflow Es,我正在设置GitHub源代码↓ 但我在[将应用程序部署到应用程序引擎标准环境]阶段遇到了麻烦。 乍一看,部署做得很好。但我正在尝试访问webservice,所以出现了[502坏网关] 在本地环境中(运行python manage.py runserver),该程序运行良好 请给我一些建议 我的环境: 窗口10 Python 3.7.3(默认值,2019年3月27日,17:13:21)[MSC v.1915 64位(AMD64)]::win32上的Anaconda,Inc django

我正在设置GitHub源代码↓

但我在[将应用程序部署到应用程序引擎标准环境]阶段遇到了麻烦。 乍一看,部署做得很好。但我正在尝试访问webservice,所以出现了[502坏网关]

  • 在本地环境中(运行python manage.py runserver),该程序运行良好
请给我一些建议

我的环境:

  • 窗口10
  • Python 3.7.3(默认值,2019年3月27日,17:13:21)[MSC v.1915 64位(AMD64)]::win32上的Anaconda,Inc
  • django 2.2.4
  • MySQL第二代5.7
  • django
我说了几句话,试图:

  • 安装mysqlclient并卸载PyMySQL
  • 以各种模式重写[导入~]部分
  • 下面Django setting.py中的说明

    # https://docs.djangoproject.com/en/2.1/ref/settings/#databases
    
    # Install PyMySQL as mysqlclient/MySQLdb to use Django's mysqlclient adapter
    # See https://docs.djangoproject.com/en/2.1/ref/databases/#mysql-db-api-drivers
    # for more information
    import MySQLdb as sql# noqa: 402
    
    # [START db_setup]
    if os.getenv('GAE_APPLICATION', None):
        # Running on production App Engine, so connect to Google Cloud SQL using
        # the unix socket at /cloudsql/<your-cloudsql-connection string>
        DATABASES = {
            'default': {
                'ENGINE': 'django.db.backends.mysql',
                'HOST': '/cloudsql/michatbot-250809:us-central1:polls-instance2',
                'USER': 'test',
                'PASSWORD': '',
                'NAME': 'polls',
            }
        }
    else:
        # Running locally so connect to either a local MySQL instance or connect to
        # Cloud SQL via the proxy. To start the proxy via command line:
    
        #     $ cloud_sql_proxy -instances=[INSTANCE_CONNECTION_NAME]=tcp:3306
        #
        # See https://cloud.google.com/sql/docs/mysql-connect-proxy
        DATABASES = {
            'default': {
                'ENGINE': 'django.db.backends.mysql',
                'HOST': '127.0.0.1',
                'PORT': '3306',
                'NAME': 'polls',
                'USER': 'test',
                'PASSWORD': '',
            }
        }
    # [END db_setup]
    
    #https://docs.djangoproject.com/en/2.1/ref/settings/#databases
    #将PyMySQL安装为mysqlclient/MySQLdb以使用Django的mysqlclient适配器
    #看https://docs.djangoproject.com/en/2.1/ref/databases/#mysql-db api驱动程序
    #更多信息
    将MySQLdb作为sql#noqa:402导入
    #[启动数据库设置]
    如果os.getenv('GAE_应用程序',无):
    #在生产应用程序引擎上运行,因此使用SQL连接到Google Cloud
    #位于/cloudsql的unix套接字/
    数据库={
    “默认值”:{
    'ENGINE':'django.db.backends.mysql',
    “主机”:“/cloudsql/michatbot-250809:us-central1:polls-instance2”,
    “用户”:“测试”,
    “密码”:“,
    '姓名':'投票',
    }
    }
    其他:
    #本地运行,因此连接到本地MySQL实例或连接到
    #通过代理云计算SQL。要通过命令行启动代理,请执行以下操作:
    #$cloud\u sql\u proxy-instances=[INSTANCE\u CONNECTION\u NAME]=tcp:3306
    #
    #看https://cloud.google.com/sql/docs/mysql-connect-proxy
    数据库={
    “默认值”:{
    'ENGINE':'django.db.backends.mysql',
    “主机”:“127.0.0.1”,
    “端口”:“3306”,
    '姓名':'投票',
    “用户”:“测试”,
    “密码”:“,
    }
    }
    #[结束数据库设置]
    
    或者登录下面的谷歌应用程序引擎

       textPayload: "Traceback (most recent call last):
      File "/env/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
        worker.init_process()
      File "/env/lib/python3.7/site-packages/gunicorn/workers/gthread.py", line 104, in init_process
        super(ThreadWorker, self).init_process()
      File "/env/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process
        self.load_wsgi()
      File "/env/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
        self.wsgi = self.app.wsgi()
      File "/env/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
        self.callable = self.load()
      File "/env/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
        return self.load_wsgiapp()
      File "/env/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
        return util.import_app(self.app_uri)
      File "/env/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app
        __import__(module)
      File "/srv/main.py", line 1, in <module>
        from mysite.wsgi import application
      File "/srv/mysite/wsgi.py", line 16, in <module>
        application = get_wsgi_application()
      File "/env/lib/python3.7/site-packages/django/core/wsgi.py", line 12, in get_wsgi_application
        django.setup(set_prefix=False)
      File "/env/lib/python3.7/site-packages/django/__init__.py", line 19, in setup
        configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
      File "/env/lib/python3.7/site-packages/django/conf/__init__.py", line 57, in __getattr__
        self._setup(name)
      File "/env/lib/python3.7/site-packages/django/conf/__init__.py", line 44, in _setup
        self._wrapped = Settings(settings_module)
      File "/env/lib/python3.7/site-packages/django/conf/__init__.py", line 107, in __init__
        mod = importlib.import_module(self.SETTINGS_MODULE)
      File "/opt/python3.7/lib/python3.7/importlib/__init__.py", line 127, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
      File "/srv/mysite/settings.py", line 82, in <module>
        import MySQLdb as sql  # noqa: 402
    ModuleNotFoundError: No module named 'MySQLdb'"
    
    textPayload:“回溯(最近一次呼叫):
    文件“/env/lib/python3.7/site packages/gunicorn/arbiter.py”,第583行,在spawn\u worker中
    worker.init_进程()
    文件“/env/lib/python3.7/site packages/gunicorn/workers/gthread.py”,第104行,在init_进程中
    super(ThreadWorker,self).init_进程()
    文件“/env/lib/python3.7/site packages/gunicorn/workers/base.py”,第129行,在init_进程中
    self.load_wsgi()
    文件“/env/lib/python3.7/site packages/gunicorn/workers/base.py”,第138行,在load_wsgi中
    self.wsgi=self.app.wsgi()
    文件“/env/lib/python3.7/site packages/gunicorn/app/base.py”,第67行,在wsgi中
    self.callable=self.load()
    文件“/env/lib/python3.7/site packages/gunicorn/app/wsgiapp.py”,第52行,已加载
    返回self.load_wsgiapp()
    文件“/env/lib/python3.7/site packages/gunicorn/app/wsgiapp.py”,第41行,在load_wsgiapp中
    return util.import\u app(self.app\u uri)
    文件“/env/lib/python3.7/site packages/gunicorn/util.py”,第350行,在导入应用程序中
    __导入(模块)
    文件“/srv/main.py”,第1行,在
    从mysite.wsgi导入应用程序
    文件“/srv/mysite/wsgi.py”,第16行,在
    application=get\u wsgi\u application()
    文件“/env/lib/python3.7/site packages/django/core/wsgi.py”,第12行,在get\u wsgi\u应用程序中
    django.setup(set_prefix=False)
    文件“/env/lib/python3.7/site packages/django/_init__.py”,第19行,在安装程序中
    配置日志记录(settings.logging\u CONFIG,settings.logging)
    文件“/env/lib/python3.7/site packages/django/conf/_init__.py”,第57行,在_getattr中__
    自我设置(名称)
    文件“/env/lib/python3.7/site packages/django/conf/_init__.py”,第44行,在安装程序中
    自包装=设置(设置模块)
    文件“/env/lib/python3.7/site packages/django/conf/_init__.py”,第107行,在_init中__
    mod=importlib.import\u模块(自我设置\u模块)
    导入模块中的文件“/opt/python3.7/lib/python3.7/importlib/_init__.py”,第127行
    return _bootstrap._gcd_import(名称[级别:],包,级别)
    文件“/srv/mysite/settings.py”,第82行,在
    将MySQLdb作为sql#noqa:402导入
    ModuleNotFoundError:没有名为“MySQLdb”的模块
    
    有两个线程,社区根据您的SO和软件版本想出了几种解决此错误的方法。您可以参考这些,也可以参考关于在Windows上用Python 3连接MySQL的更多讨论


    确保遵循GAE标准中关于Python 3.7的说明。另外,GAE对使用Django有一些特定的支持,我建议您浏览Django支持,然后。

    谢谢您的回复。我想我现在解决不了这个问题。我会阅读你告诉我的文档,然后再次挑战。谢谢