2016-08-28 6 views
2

Я пытаюсь запустить приложение Flask с Gunicorn. Когда я запускаю gunicorn app:index, я получаю ошибку TypeError: index() takes 0 positional arguments but 2 were given. Ни один из примеров, которые я видел, не показывает index, нуждающихся в двух параметрах. Что означает эта ошибка? Как запустить Flask с Gunicorn?Запуск Flask с Gunicorn повышает TypeError: index() принимает 0 позиционных аргументов, но 2 дано

from flask import Flask 

app = Flask(__name__) 

@app.route("/") 
def index(): 
    return 'Hello, World!' 
gunicorn app:index 
respiter = self.wsgi(environ, resp.start_response) 
TypeError: index() takes 0 positional arguments but 2 were given 

Я изменил index принимать два аргумента, но получил другую ошибку.

@app.route("/") 
def index(arg1, arg2): 
    return 'Hello, World!' 
/python3.4/site-packages/flask/templating.py, line 132, in render_template 
    ctx.app.update_template_context(context) 
AttributeError: 'NoneType' object has no attribute 'app' 

ответ

2

Вы должны передать экземпляр флягу gunicorn, а не имя функции, как вы делали с index. Поэтому, если ваше приложение сохранено как app.py, вам необходимо запустить gunicorn следующим образом:

$ gunicorn --bind 127.0.0.1:8000 app:app