2017-01-16 14 views
0

Я использую python 2.7.6 на ubuntu 14.04 с фальцовым веб-каркасом и пытается запустить простую программу мира привет. Но при запуске этого примера появляется следующая ошибка. Есть идеи об этом?объект не имеет атрибута «API» ошибка в falcon

Код:

import falcon 

class ThingsResource(object): 
    def on_get(self, req, resp): 
     """Handles GET requests""" 
     resp.status = falcon.HTTP_200 
     resp.body = 'Hello world!' 

# falcon.API instances are callable WSGI apps 
wsgi_app = api = falcon.API() 

# Resources are represented by long-lived class instances 
things = ThingsResource() 

# things will handle all requests to the '/things' URL path 
api.add_route('/hello', things) 

Ошибка:

Traceback (most recent call last): 
    File "falcon.py", line 1, in <module> 
    import falcon 
    File "/home/naresh/Desktop/PythonFramework/falcon.py", line 10, in <module> 
    wsgi_app = api = falcon.API() 
AttributeError: 'module' object has no attribute 'API' 
+1

Вы, вероятно, назвали ваш файл питон falcon.py правильно? – iFlo

ответ

2

Файл питон falcon.py поэтому, когда вы звоните falcon.API() вы вызываете метод API() в файле, а не из реальный модуль falcon.

Просто переименуйте файл, и он будет работать.


Для более полного решения, увидеть это:

Trying to import module with the same name as a built-in module causes an import error:

You will want to read about Absolute and Relative Imports which addresses this very problem. Use:

from __future__ import absolute_import Using that, any unadorned package name will always refer to the top level package. You will then 

need to use relative imports (from .email import ...) to access your own package.

 Смежные вопросы

  • Нет связанных вопросов^_^