title: Flask Error: typeerror run() got an unexpected keyword argument 'host'
body: <p>I built a website on virtualbox with Flask. The website can be opened on localhost, but I cannot open it through Port forwarding, so I changed the code from <code>manage.run()</code> to <code>manage.run(host='0.0.0.0')</code>. </p>
  
  <p>The problem is that I am receiving this error: </p>
  
  <pre><code>typeerror run() got an unexpected keyword argument 'host'. 
  </code></pre>
  
  <p>The similar error occurs when change <code>manage.run()</code> to <code>manage.run(debug=True)</code>. I just followed the Flask documentation.<a href="http://flask.pocoo.org/docs/quickstart/#a-minimal-application">http://flask.pocoo.org/docs/quickstart/#a-minimal-application</a> Could anyone let me know why I'm receiving this error? </p>
  
  <pre><code>#!/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 &gt;&gt; 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 &gt;&gt; stderr, "The given action '%s' is invalid." % action
              exit(-1)
          action(db)
          print &gt;&gt; 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 &gt;&gt; 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()
  </code></pre>