2013-02-21 9 views
10

मैं this article पर ठोकर खाई और सभी चरणों का पालन किया। लेकिन pyDev मेरे फ्लास्क एक्सटेंशन नहीं देखेगा और यह वास्तव में कष्टप्रद है। सिर्फ एक ही बात है (और मुझे लगता है कि यह महत्वपूर्ण है):विंडोज़ पर फ्लास्क एक्सटेंशन देखने के लिए एक्लिप्स/pydev को खुश करने के लिए कैसे?

Touch /site-packages/flaskext/__init__.py

Touch एक यूनिक्स है util मुझे लगता है। क्या विंडोज़ पर इसके बराबर है?

उत्तर

25

ग्रहण डिफ़ॉल्ट रूप से मॉड्यूल के स्थिर विश्लेषण का उपयोग करता है। flask.ext गतिशील रूप से आयात सूची बनाता है। पाइथन शेल का उपयोग करके गतिशील विश्लेषण को मजबूर करने के लिए मजबूर बिल्डिन सूची में flask.ext जोड़ें।

Preferences -> PyDev -> Interpreters -> Python Interpreter पर जाएं। अपना दुभाषिया चुनें, Forced Builtins टैब पर जाएं। New... पर क्लिक करें और flask.ext दर्ज करें।

इसके लिए पीडीडीव को शेल के माध्यम से मॉड्यूल का जोरदार विश्लेषण करने की आवश्यकता है।

अधिक जानकारी के लिए PyDev manual देखें।

+0

यह बहुत ही आशाजनक लग रहा है। इस बीच में मैंने PyCharm पर स्विच किया, इसलिए मैं इसे स्वयं (और नहीं करना चाहता) परीक्षण कर सकता हूं। हालांकि, मैं इस प्रश्न को हल करने के रूप में चिह्नित करूंगा, क्योंकि आप आधिकारिक दस्तावेज़ीकरण का संदर्भ दे रहे हैं। – floqqi

+3

यह मैंने स्थापित किसी भी flask.ext मॉड्यूल के लिए अनसुलझा आयात को ठीक करता है। पाइथन पैथ में फ्लास्क मॉड्यूल जोड़ना अनसुलझा आयात को ठीक नहीं करता है। –

+0

यह आशाजनक लग रहा है, लेकिन यह मैक ओएस एक्स 10.11 पर लीक्लिप्स 3.6.0 में मेरे लिए काम नहीं करता है। संभवत: लीक्लेव में बंडल के रूप में पाइडेव में एक बग? –

0

touch यदि यह अस्तित्व में नहीं है, तो एक रिक्त फ़ाइल बनायेगी, या फ़ाइल के संशोधन समय को अद्यतन होने पर अपडेट करेगा।

इस उद्देश्य के लिए, echo > /site-packages/flashext/__init__.py कमांड लाइन पर पर्याप्त होना चाहिए। (फ़ाइल खाली नहीं होगी, लेकिन केवल एक ही नई लाइन है जो पाइथन के लिए अर्थात् समकक्ष है)।

+0

धन्यवाद, लेकिन ग्रहण में मेरे पायथन दुभाषिया को बहाल करने के बाद समस्या अभी भी मौजूद है .. – floqqi

1

मैं इसके साथ भी संघर्ष कर रहा हूं और समस्या यह है कि फ्लास्क एक्सटेंशन आयात करता है। यदि आप flask/ext/__init__.py फ़ाइल खोलते हैं तो आप देखेंगे कि यह आयातक का उपयोग करता है। मुझे नहीं लगता कि PyDev ज्यादा यह पसंद है, तो मैं तय आयात के साथ इस फ़ाइल को संपादित किया है:

import flask_login as login 
import flask_sqlalchemy as sqlalchemy 
import flask_wtf as wtf 

def setup(): 
    from ..exthook import ExtensionImporter 
    importer = ExtensionImporter(['flask_%s', 'flaskext.%s'], __name__) 
    importer.install() 


setup() 
del setup 

मैं यह भी पाया है कि कुप्पी के SQLAlchemy आयात भी तोड़ दिया है, तो बजाय db.Column करने का में बताई गई विधि प्रलेखन, सीधे sqlalchemy आयात का उपयोग करें, यानी from sqlalchemy import Column, ForeignKey

0

यदि आपके पास वर्चुअल वातावरण में आपकी प्रोजेक्ट है और आप ग्रहण में प्रोजेक्ट जोड़ना चाहते हैं ताकि परियोजना वर्चुअल वातावरण पर स्थापित पुस्तकालयों का उपयोग करे, तो आपको निम्न चरणों का पालन करना चाहिए।

चरण 1: के अपने आभासी वातावरण का निरपेक्ष पथ मान लीजिए है: C:\Users\sadegh\Desktop\flask_eclipse\fe\venv

The content of venv folder

Scripts निर्देशिका में window->preferences->PyDev->interpretors->Python Interpretor करने के लिए जाना है, वहाँ है python.exe enter image description here जो अजगर दुभाषिया है यह इस आभासी पर्यावरण को सौंपा गया है। यह निष्पादन योग्य नया पायथन दुभाषिया होगा जिसे हम ग्रहण में जोड़ देंगे।

चरण 2: जाओ window->preferences->PyDev->Interpreters->Python Interpreter enter image description here

दाएँ फलक में आप इस देखेंगे रहे हैं: नई बटन पर enter image description here

क्लिक तो इस विंडो पॉप अप होगा: enter image description here

कुछ भी लिखना आप Interpreter Name फ़ील्ड में चाहते हैं औरमें चरण 1 में वर्णित python.exe फ़ाइल का पूर्ण पथ लिखेंक्षेत्र

OK क्लिक करने के बाद यह पॉप अप होगा: enter image description here

सभी आइटम चुनने उसके बाद OK

चरण 3: ऊपर फलक में नए जोड़े दुभाषिया चुनें, फिर नीचे फलक में करने के लिए जाना Forced Builtin टैब और नीचे दिए गए फलक के दाईं ओर स्थित नए बटन पर क्लिक करें।

enter image description here

और खिड़की है कि लिखने flask.ext पॉप अप होने में।

step4: अब सब कुछ सेट है:

यदि आप एक नई परियोजना शुरू करना चाहते हैं: जब आप एक नया PyDev Project पैदा कर रहे हैं कि हम इस परियोजना के अनुवादक के रूप में बनाए गए नए दुभाषिया चयन । enter image description here

यदि आप सही परियोजना पर क्लिक करें और गुण के लिए और नए दुभाषिया हम पैदा की है कि करने के लिए दुभाषिया PyDev-Interpreter/Grammar परिवर्तन में जाना अपने आभासी पर्यावरण पर एक कुप्पी परियोजना के लिए एक मौजूदा परियोजना परिवर्तित करना चाहते हैं।

नोट: यदि आप आभासी वातावरण में आप के लिए सर्वर को चलाने के लिए ग्रहण चाहते हैं तो आप कोड है कि इस तरह बोतल() उदाहरण में शामिल है के भीतर से सर्वर चला सकते हैं:,

if __name__ == '__main__': #here i assume you have put this code in a file that  
    app.run() #contains variable "app", which contains the instance of #Flask(__main__) 
+0

यह सभी परियोजनाओं के लिए वैश्विक रूप से दुभाषिया को जोड़ देगा, भले ही प्रश्न में दुभाषिया एक परियोजना-विशिष्ट दुभाषिया होगा। क्या दुभाषिया को जोड़ने का कोई तरीका है, इसलिए यह केवल परियोजना-विशिष्ट है? – FluxIX

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