2009-05-04 16 views
6

उदाहरण के लिए कहें मेरे पास एक ब्लॉग ऐप है जिसे मैं विभिन्न परियोजनाओं में छोड़ने में सक्षम होना चाहता हूं, लेकिन मैं हमेशा ब्लॉग को किसी अन्य मॉडल से जोड़ना चाहता हूं। उदाहरण के लिए, एक मामले में मैं चाहते हो सकता है कि यह एक उपयोगकर्ता के साथ जुड़े होने:आप Django ऐप प्लग करने योग्य कैसे बनाते हैं?

site.com/someuser/blog

लेकिन एक अन्य साइट मैं इसके साथ, कहते हैं, एक स्कूल संबद्ध करना चाहते पर:

site.com/someschool/blog

वहाँ ब्लॉग एप्लिकेशन प्लगेबल इतना है कि यह जब भी मैं यह एक परियोजना में छोड़ मॉडल (एक विदेशी कुंजी क्षेत्र को जोड़ने) को फिर से परिभाषित करने के लिए आवश्यक नहीं है बनाने के लिए एक तरीका है?

+2

जांच पिछले Django सम्मेलन – yesraaj

उत्तर

4

आप सामग्री प्रकार के ढांचे में देखना चाहते हैं, मैंने इसे एक टिप्पणी ऐप बनाने के लिए उपयोग किया जिसका उपयोग डेटाबेस में किसी भी मॉडल पर टिप्पणी करने के लिए किया जा सकता है (विभिन्न कारणों से, मैं मानक django टिप्पणी ऐप का उपयोग नहीं करना चाहता था)। प्लगेबल क्षुधा पर बात के लिए

http://docs.djangoproject.com/en/dev/ref/contrib/contenttypes/

6

यकीन है कि कोई एप्लिकेशन पुन: प्रयोज्य हो सकता है बनाने के लिए कई महत्वपूर्ण जानकारी कर रहे हैं और मुझे लगता है कि यह विषय पर दस्तावेज की अधिक महत्वपूर्ण सेट के दो से जोड़ने के लिए सबसे अच्छा है:

3

Generic relationships आपको किसी अन्य मॉडल के लिए विदेशी कुंजी रखने की अनुमति देता है। हालांकि यह आपके प्रश्न से स्पष्ट नहीं है कि आप किस प्रकार की ऑब्जेक्ट को लिंक करने के लिए एक विदेशी कुंजी चाहते हैं। मुझे संदेह है कि विदेशी कुंजी संबंध वास्तव में सामान्य नहीं है - आपने अभी अपने सिस्टम का एक और हिस्सा नहीं देखा है जो एक पुन: प्रयोज्य ऐप भी हो सकता है।

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