Flask Error:typeerror run()得到一个意外的关键字参数'host'

时间:2013-04-24 15:09:21

标签: python frameworks flask

我使用Flask在virtualbox上建立了一个网站。该网站可以在localhost上打开,但我无法通过端口转发打开它,因此我将代码从manage.run()更改为manage.run(host='0.0.0.0')

问题是我收到此错误:

typeerror run() got an unexpected keyword argument 'host'. 

manage.run()更改为manage.run(debug=True)时发生类似错误。我只是按照Flask文档。http://flask.pocoo.org/docs/quickstart/#a-minimal-application有谁能让我知道为什么我收到这个错误?

#!/usr/bin/env python
#-*- coding:utf-8 -*-

"""Manage Script."""

from sys import stderr, exit

from flask.ext.script import Manager, prompt_bool

from szupa import create_app
from szupa.extensions import db
from szupa.account.models import User
from szupa.context import create_category_db


app = create_app()
manager = Manager(app)


@manager.command
def initdb():
    """Initialize database."""
    db.create_all()
    create_category_db()


@manager.command
def migrate(created, action="up"):
    module_name = "migrates.migrate%s" % created
    try:
        module = __import__(module_name, fromlist=["migrates"])
    except ImportError:
        print >> stderr, "The migrate script '%s' is not found." % module_name
        exit(-1)
    if prompt_bool("Confirm to execute migrate script '%s'" % module_name):
        try:
            action = getattr(module, action)
        except AttributeError:
            print >> stderr, "The given action '%s' is invalid." % action
            exit(-1)
        action(db)
        print >> stderr, "Finished."


@manager.command
def dropdb():
    """Drop database."""
    if prompt_bool("Confirm to drop all table from database"):
        db.drop_all()


@manager.command
def setadmin(email):
    """Promote a user to administrator."""
    user = User.query.filter_by(email=email).first()
    if not user:
        print >> stderr, "The user with email '%s' could not be found." % email
        exit(-1)
    else:
        user.is_admin = True
        db.session.commit()


if __name__ == "__main__":
    manager.run()

1 个答案:

答案 0 :(得分:1)

正如@ fangwz0577在评论中所说,他们使用App\Company.php解决了这个问题。其链接的归档版本为here

  

接下来,创建manage.py文件。使用此文件加载其他内容   未来的Flask脚本。 Flask-scripts提供了一个开发   服务器和shell:

from flask.ext.script import Manager, Server
from tumblelog import app

manager = Manager(app)

 # Turn on debugger by default and reloader 
manager.add_command("runserver", Server(
    use_debugger = True,
    use_reloader = True,
    host = '0.0.0.0') )