2011-06-20 22 views
6

मैं उपयोग web.py छोटे HelloWorld साइट लिखना है, लेकिन जब मैं python code.py चलाने मैंने एक त्रुटि संदेश मिलता है:Web.py - AttributeError: 'मॉड्यूल' ऑब्जेक्ट कोई विशेषता 'आवेदन'

Traceback (most recent call last): File "E:\Python25\webpy\web\mysite.py", line 1, in <module> 
    import web File "E:\Python25\webpy\web\web.py", line 4, in <module> 
    app = web.application(urls, globals()) AttributeError: 'module' object has no attribute 'application' 

यहाँ है मेरी कोड (web.py के ट्यूटोरियल से पेस्ट करें):

import web 

urls = ('/','Index', 
) 

class Index: 
    def GET(self): 
    return "Hello,world!" 

app=web.application(urls,globals()) 

if __name__=="__main__": 
    app.run(

पीएस: वेब.py संस्करण 0.35 है।

उत्तर

9

आप नाम टकराव में भाग रहे हैं। आपने अपना पैकेज वेब नाम दिया है, और मॉड्यूल वेब आयात करने की कोशिश कर रहे हैं।

मुझे लगता है कि यह एक पैकेज में है?

\webpy\web\mysite.py

जब आप import web आप अपने पैकेज नहीं वास्तविक web.py. आयात कर रहे हैं यदि हां इसका नाम बदलें, या अपने पायथनपैथ को पुन: व्यवस्थित करें।

+0

आपका मतलब है कि मेरा वेब मॉड्यूल वेबकैम के साथ संघर्ष कर रहा था लेकिन मुझे अपना वेब नहीं मिल रहा है :( – Xhinking

+0

क्या आपके पास \ _ \ _ init \ _ \ _ है। वेबपी \ web \? – Nix

+0

में हां, मेरे पास webpy \ web \ – Xhinking

1

यह मेरे मामले में काम किया: app.yaml फ़ाइल में, की जगह

- url: /.* 
    script: test.application 
इस के लिए

,

- url: /.* 
    script: test.app 

यह नाम संघर्ष का समाधान।

1

प्रति के ऊपर एक उपयोगकर्ता से सिफारिश, मैं एक जवाब में मेरी टिप्पणी कर दिया है उसकी दृश्यता में सुधार करने के:

आप पहली बार अपने फ़ाइल web.py बुला के बजाय code.py अजगर ट्यूटोरियल में के रूप में द्वारा शुरू किया, तो आप भी हो सकता है उस फ़ोल्डर में बनाया गया web.pyc "बाइट कोड" फ़ाइल है जहां आप कोडिंग कर रहे हैं। नाम टकराव की खोज करने के बाद, सुनिश्चित करें कि आप web.pyc फ़ाइल भी हटाएं।

संबंधित मुद्दे