में लेआउट टेम्पलेट बदलना कोहाना (PHP ढांचे) में लेआउट टेम्पलेट_Controller के माध्यम से कार्यान्वित किया जाता है जो $ टेम्पलेट नामक एक सदस्य चर को निरंतर रखता है, जो लेआउट व्यू के रूप में कार्य करता है। फिर कार्रवाई विधि में आप अधिक उप-विचारों के साथ $ टेम्पलेट को पॉप्युलेट कर सकते हैं, आमतौर पर सामग्री दृश्य। (http://forum.kohanaframework.org/discussion/3612/kohana-layout-system/p1)रनटाइम
यह मुझे रनटाइम में लेआउट "थीम" बदलने की अनुमति देता है। यह बहुउद्देश्यीय प्रणाली के लिए उपयोगी है, जहां एक किरायेदार अपनी थीम (दो कॉल, तीन कॉल इत्यादि) का चयन कर सकता है
स्कैला टेम्पलेट इंजन के साथ प्लेफ्रेमवर्क 2 स्कैला में मैं इसे कैसे प्राप्त कर सकता हूं? दूसरे शब्दों में, मैं कई लेआउट टेम्पलेट्स रखना चाहता हूं जिसमें किरायेदार चुन सकता है। नियंत्रक तब लेआउट टेम्पलेट और कार्रवाई विशिष्ट सामग्री टेम्पलेट प्रस्तुत करता है।
कुछ की तरह (नियंत्रक कार्रवाई स्यूडोकोड):
- उपयोगकर्ता के आधार पर, लेआउट विषय को पुनः प्राप्त (एक नाम एक डेटाबेस में स्ट्रिंग में संग्रहीत है, और मानचित्रण दृश्य फ़ाइल इसी गया है)।
- कार्रवाई विशिष्ट सामग्री दृश्य प्रस्तुत करें।
- (2) के साथ (1) से प्राप्त लेआउट व्यू प्रस्तुत करें।
नोट: प्रत्येक कार्रवाई के लिए, लेआउट थीम प्रति उपयोगकर्ता बदल सकती है लेकिन सामग्री दृश्य समान रहता है।
इसमें प्रलेखन है (http://www.playframework.com/documentation/2.1.1/ScalaTemplateUseCases)
सामग्री टेम्पलेट, कहते हैं, index.scala.html, मुख्य जो main.scala.html में परिभाषित किया गया है के लिए एक कॉल, लेआउट टेम्पलेट भी शामिल है। दूसरे शब्दों में, यह कठिन कोडित है, इस प्रकार index.scala.html कसकर main.scala.html के साथ मिलकर है।
हालांकि मैं प्रतिबिंब का उपयोग करके नियंत्रक से मुख्य को कॉल करने और फिर सामग्री को पार करने के बारे में बताता हूं।
एक वैकल्पिक स्केलेट जैसे व्याख्या किए गए टेम्पलेट इंजन का उपयोग करना होगा।
कोई सुझाव?