我用 Flask 在 virtualbox 上建立了一个网站。该网站可以在本地主机上打开,但我无法通过端口转发打开它,所以我将代码从 更改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()