2013-04-18 6 views
5

मैं जानना चाहता हूं कि हम एक अलग एप्लिकेशन के अंदर से एप्लिकेशन को "कॉल" कैसे कर सकते हैं। मूल रूप से, मेरे पास है, उदाहरण के लिए:Django: किसी अन्य ऐप के अंदर एक ऐप को एकीकृत करने के लिए कैसे करें

  • कि html में एक कैलेंडर रेंडर करने के लिए एक निश्चित प्रक्रिया करता है एक कैलेंडर ऐप
  • है कि एक वेबसाइट के index.html से पता चलता है एक "मुख्य" एप्लिकेशन

मैं मुख्य ऐप को कैलेंडर ऐप का आह्वान करना चाहता हूं और साइडबार में जो प्रस्तुत करता हूं उसे सम्मिलित करना चाहता हूं।

उदाहरण के लिए कोडइग्निटर ढांचा, इसे संभाल सकता है। एक नियंत्रक एक और नियंत्रक का आह्वान कर सकता है, जो एक चर में यह लौटाता है (एचटीएमएल आउटपुट) बचाता है, और आखिरकार इस चर को उस संदर्भ में शामिल करता है जिसका उपयोग अंतिम HTML फ़ाइल को प्रस्तुत करने के लिए किया जाएगा।

क्या यह Django के साथ संभव है? धन्यवाद

उत्तर

4

अच्छा, मुझे लगता है कि मुझे समाधान मिल सकता है। मैं Django के लिए नया हूँ इसलिए मुझे नहीं पता कि यह करने का एक अच्छा तरीका है, अगर यह कुछ पारंपरिक नियमों को ब्रोक करता है, अगर यह कुछ सुरक्षा छेद खोलता है, या यदि बस, अन्य बेहतर तरीके हैं, लेकिन वैसे भी, यह काम करता है ...

इसलिए, मैंने अपना आवेदन कैलेंडर बनाया, और मेरा आवेदन दिखाएं। मुझे कैलेंडर को आमंत्रित करने के लिए दिखाएं, और उसके बाद के टेम्पलेट के अंदर परिणाम डालें दिखाएं।

# Calendar view 

from django.template.response import TemplateResponse 

def render_calendar(request): 
    return TemplateResponse(request, 'calendar/calendar-template.html', {}) 

तब दिखाएँ तरफ,, TemplateResponse उदाहरण मिल अपने render() विधि आह्वान, और अंत में rendered_content संदर्भ अंदर सम्मिलित करें:

कि मैं कैलेंडर तरफ TemplateResponse बजाय HttpResponse इस्तेमाल किया करने के लिए:

# Show view 

from calendar import views 

def show(request, show_id): 
    cal = views.render_calendar(request) 
    cal.render() 
    context = {"calendar": cal.rendered_content} 
    return render_to_response("show/show-template.html", context) 

और यह चाल है!

0

की क्रमबद्ध करें ...

एक टेम्पलेट टैग {% ssi %} कि आप किसी अन्य के अंदर एक टेम्पलेट शामिल करने के लिए अनुमति देता है नहीं है, केवल एक चीज आप माता-पिता टेम्पलेट सभी संदर्भ में की जरूरत चर पारित करने के लिए की आवश्यकता होगी अन्य टेम्पलेट।

+0

हाँ .. बात यह है कि मेरे "साइड-ऐप" (विजेट-जैसी) बहुत ही स्वतंत्र हैं, और मैं एक ही स्थान पर सभी अनुप्रयोगों के सभी चर को संभालना नहीं चाहता हूं। – Firas

+0

@ फ़िरस मुझे किसी अन्य तरीके से अवगत नहीं है, क्षमा करें, शायद किसी और को पता चलेगा ... – Ngenator

+0

Thx वैसे भी, मैं इसकी सराहना करता हूं – Firas

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