का उपयोग करते हुए जैकील टेम्पलेट्स मैं जैकिल में एक बड़े तरीके से जा रहा हूं और इसे सामान्य फ्रंट एंड डेवलपमेंट प्लेटफ़ॉर्म के रूप में उपयोग करना चाहता हूं, लेकिन तरल टेम्पलेटिंग भाषा की सीमाओं के विरुद्ध चल रहा हूं , विशेष रूप से Django templating के लिए इसके अंतर।डीजेंगो जैसे तरल ब्लॉक/विरासत
मैंने तरल-विरासत मणि की खोज की, जो Django से सभी महत्वपूर्ण विस्तार और ब्लॉक वाक्यविन्यास जोड़ता है। http://www.sameratiani.com/2011/10/22/get-jekyll-working-with-liquid-inheritance.html
समस्या यह है कि यह ठीक उसी तरह Django करता है, जो अनिवार्य रूप से मणि बेकार renders में ब्लॉक लागू करने के लिए प्रकट नहीं होता है: इस ब्लॉग पोस्ट मणि आगे Jekyll के फाइल सिस्टम के अनुरूप करने के फैली हुई है।
मेरे पास दो jekyll "लेआउट" हैं - समझने के लिए - parent.html और child.html। इनमें से कोई भी वाईएएमएल अनुभाग नहीं है।
---
title: test
---
{% extends _layouts/child.html %}
{% block bar %}My title is {{ page.title }} {% endblock %}
मैं क्या उम्मीद थी:
जनक
<html>
{% block foo %} {% endblock %}
</html>
बाल
{% extends _layouts/parent.html %}
{% block foo %}
<div>
Bar comes next:
{% block bar %} {% endblock %}
</div>
{% endblock %}
और फिर मैं एक Jekyll पेज जो एक YAML अनुभाग इस प्रकार भी शामिल है
<html>
<div>
Bar comes next:
My title is test
</div>
</html>
मुझे क्या मिलेगा:
<html>
<div>
Bar comes next:
</div>
</html>My title is test
यह कुछ, माता पिता/बच्चे के उपयुक्त स्थानों में प्रविष्टि के लिए योग्य होने के रूप में mypage.html में ब्लॉक के इलाज के लिए विफल हो रहा है, हालांकि यह स्पष्ट रूप से अभी भी कुछ कर रहा है लगता है।
मैं एक रूबी डेवलपर नहीं हूं और जेकील के लिए काफी नया हूं, इसलिए मुझे यह पता लगाने में मदद की ज़रूरत है कि इस ढेर का कौन सा हिस्सा असफल रहा है। GitHub पर तरल विरासत मुद्दों का सुझाव अन्य लोगों को इस ब्लॉक घोंसले समस्या का सामना कर रहे हैं: https://github.com/danwrong/liquid-inheritance/issues/3
मैं तरल उत्तराधिकार के कांटे, जिनमें से कई जाहिरा तौर पर है कि समस्या को ठीक regex के कई की कोशिश की है, लेकिन कोई भी इस का समाधान करने लगते हैं।
क्या मैं मूल रूप से असंभव करने की कोशिश कर रहा हूं? ऐसा लगता है कि मैं कम से कम 85% रास्ते में हूं और अंतिम बिट को फिक्सिंग की जरूरत है।
मैंने अभी परीक्षण किया है, और पाया कि यद्यपि तरल विरासत * लेआउट * पर ठीक काम करती है, लेकिन जब आप वास्तविक * सामग्री * पृष्ठों पर जाते हैं तो यह विफल हो जाता है - जो मुझे लगता है कि आपकी समस्या कहां उत्पन्न होती है (जो। लेकिन जैसा कि मैंने कहा - एक बार जब आप सामग्री के एक विशिष्ट टुकड़े पर उतर जाते हैं, तो मुझे अभी भी आश्वस्त है कि YAML आपके सामग्री क्षेत्र में ब्लॉक डालने से सहायक सामग्री शामिल करने का एक बेहतर तरीका है ... – heliotrope
वाईएएमएल निश्चित रूप से ऐसा करने का सबसे अच्छा तरीका है, लेकिन यह बन जाता है अनावश्यक रूप से जटिल यदि आपकी अधिकांश सामग्री अविभाज्य HTML के बड़े ब्लॉक हैं। शीर्षक के अलावा, कच्चे डेटा का एक बड़ा सौदा नहीं है जिसे मुझे वास्तव में _process_ की आवश्यकता है। मुझे बस HTML के बड़े हिस्से को विशिष्ट में डालने की आवश्यकता है , पृष्ठ के गैर-संगत क्षेत्रों। वर्णन करते हैं कि वाईएएमएल में एचटीएमएल बेकार और अस्पष्ट है। – xcession