2009-02-06 17 views
69

के साथ उपयोग के लिए एक HAML कार्यान्वयन है, मैं सामग्री को चिह्नित करने और HTML के लिए टेम्पलेट लिखने के लिए एक दिलचस्प और सुंदर तरीका HAML पर ठोकर खा गया।क्या पाइथन और डीजेगो

चूंकि मैं अपनी वेब विकास की आवश्यकता के लिए पाइथन और डीजेंगो का उपयोग करता हूं, इसलिए मैं देखना चाहता हूं कि HAML का पाइथन कार्यान्वयन है (या कुछ समान अवधारणाओं - बिल्कुल समान नहीं होने चाहिए) जिसका उपयोग Django को प्रतिस्थापित करने के लिए किया जा सकता है टेम्पलेट इंजन।

उत्तर

21

मैं GHRML, जेन्शी के लिए हमल देखेंगे। लेखक मानते हैं कि यह मूल रूप से पाइथन के लिए हैमल है और अधिकांश वाक्यविन्यास समान है (और यह Django में काम करता है)। यहाँ कुछ GHRML केवल आपके दिखाने के लिए कितने करीब वे कर रहे हैं क्या है:

%html 
    %head 
    %title Hello World 
    %style{'type': 'text/css'} 
     body { font-family: sans-serif; } 
    %script{'type': 'text/javascript', 'src': 'foo.js'} 

    %body 
    #header 
     %h1 Hello World 
    %ul.navigation 
     %li[for item in navigation] 
     %a{'href': item.href} $item.caption 

    #contents 
     Hello World! 
+2

वह लिंक 404 देता है। परियोजना को त्याग दिया नहीं गया है? –

+0

डिट्टो। पृष्ठ भी मेरे लिए त्रुटि देता है। –

+1

बोर्कन लिंक, क्या यह अपडेट किया जा सकता है? – arbales

4

यह वास्तव में आपके प्रश्न का उत्तर नहीं है, लेकिन Haml, SASS की सीएसएस घटक, किसी भी ढांचे के साथ स्वतंत्र रूप से इस्तेमाल किया जा सकता। मैं अभी Django के साथ इसका उपयोग कर रहा हूँ।

+0

सुधीर क्या आप मुझे बता सकते हैं कि आप इसे कैसे सेट अप करते हैं? इंस्टॉलेशन "मणि इंस्टॉल" का उपयोग करता है, इसलिए मुझे लगता है कि आपने स्रोत डाउनलोड किया है और इसे किसी अन्य तरीके से खराब कर दिया है? विवरण कृपया! =] –

+1

यह शायद ही जटिल है ... मैं कम्पास फ्रेमवर्क का उपयोग कर रहा हूं - यह एक घड़ी प्रोग्राम के साथ आता है जो स्वचालित रूप से .css फ़ाइलों को .css पर संकलित करता है। Http://compass-style.org/ –

36

आप SHPAML में रुचि हो सकती:

http://shpaml.com/

मैं सक्रिय रूप से इसे बनाए रखने कर रहा हूँ। यह एक साधारण प्रीप्रोसेसर है, इसलिए यह किसी भी अन्य उपकरण से जुड़ा नहीं है जैसे कि गेंशी। मैं Django के साथ इसका उपयोग करता हूं, इसलिए Django समर्थन का थोड़ा सा हिस्सा है, लेकिन इसे अन्य उपयोग मामलों में हस्तक्षेप नहीं करना चाहिए।

+4

पर एक नज़र डालें क्या SHPAML अभी भी सक्रिय विकास में है? ऐसा लगता है कि आपने रखरखाव छोड़ दिया है और तब से बहुत कुछ नहीं हुआ है। मैं गीथूब पर इसे (वेबसाइट के बाकी हिस्सों के बिना) पर विचार करने पर विचार कर रहा था, लेकिन मुझे पूरा यकीन नहीं है कि यह एक अच्छा विचार है क्योंकि पीईपीआई पैकेज अभी भी आसपास है। –

+0

@Alan, एक और पूछ रहे हैं ... – rapadura

+0

मैं भी जानना चाहता हूं। – zakdances

3

मुझे यकीन नहीं है कि जीएचआरएमएल बिट की स्थिति क्या है क्योंकि मैं हाल ही में इसे देख रहा था। इसके लिए रेपो नहीं मिल रहा है, मूल डेवलपर के पास अब इसके लिए समय नहीं है और परियोजना में रुचि रखने वाले किसी और द्वारा रखरखाव उठाया गया है। इस पर कोई अतिरिक्त जानकारी सहायक होगी। अब)

http://dasacc22.wordpress.com/2010/05/03/python-implementation-of-haml/

यह पल में उत्पादन में उपयोग के लिए कोई रास्ता नहीं फिट में है (इसके सचमुच एक 4 दिन पुरानी शिशु;

दुर्भाग्य से, के रूप में इन बातों को जाना, मैं अपने ही Haml शैली प्रोसेसर लिखना शुरू किया लेकिन उन 4 दिनों में 60 + घंटे क्रैम की तरह) लेकिन रुचि रखने वाले किसी भी व्यक्ति इसे यहां देख सकते हैं। इसमें पहले से ही लागू सुविधाओं की एक श्रृंखला है जो इसे खिलौने के रूप में उपयोगी बनाती है, और जैसे ही मैं अगले सप्ताह में कोडबेस साफ़ करता हूं, मुझे उम्मीद है कि यह मेरे सभी कस्टम एक्सएसएलटी/एक्सपैथ एक्सटेंशन और टेम्पलेट्स को प्रतिस्थापित करेगा।

18

मैं वही ढूंढ रहा हूं। मैं यह कोशिश की है नहीं, लेकिन यह पाया:

http://github.com/jessemiller/HamlPy

+2

पर रहने के लिए अब यह बहुत अच्छा काम करता है और इसमें एसएएसएस की तरह एक दर्शक भी है। शीर्ष उत्तर की तुलना में निश्चित रूप से अधिक सक्रिय। – bcoughlan

+1

यह परियोजना अब मूल रूप से मृत है; 2 साल में कोई काम नहीं करता, कोई पायथन 3 समर्थन नहीं। पता नहीं कैसे रेपो/पैकेज रखरखाव नियंत्रण छोड़ सकते हैं ... लेकिन ऐसा होना चाहिए। –

+0

@NickT Py3 समर्थन: hamlpy3 – Natacha

2

मैं सिर्फ इस http://github.com/fitoria/django-haml यह अभी भी बहुत ही प्रारंभिक चरण में है बनाया है, लेकिन यह काम करता है।

2

डैनियल स्किनर की परियोजना (ऊपर वर्णित) का नाम बदलकर डीएमएसएल कर दिया गया है। यह बहुत शक्तिशाली लगता है, Haml emulates लेकिन आप इसे की वाक्य रचना में अजगर काम करता है, lambdas, comprehensions आदि का उपयोग करने की अनुमति देता है: https://github.com/dasacc22/dmsl

+1

डीएमएसएल (या वास्तव में dasacc22) github पृष्ठ अब मौजूद नहीं है। अब https://github.com/dskinner/dmsl –

3

मेरे परियोजना, PyHAML, एक मैको पूर्वप्रक्रमक है कि आप बहुत Haml की तरह वाक्य रचना देता है। कुछ रूबी पाइथन के लिए बहुत अच्छी तरह से अनुवाद नहीं करते हैं, इसलिए कुछ मतभेद हैं, लेकिन आत्मा एक जैसी है।

3

मैं जेड में कुछ नोड.जेएस काम कर रहा था और जब Django लौटने पर कुछ इसी तरह की तलाश में था। मुझे Pyjade मिला और जब यह लगभग ठीक है, तो मैं Django के अंदर त्रुटियों और डीबगिंग को खराब तरीके से संभालता हूं।

+0

पर यह शानदार है। स्वीकृत उत्तर होना चाहिए। इस टिप्पणी के समय भी सक्रिय विकास में – Ben

6

आपको Plim में रुचि हो सकती है। यह Slim का परिपक्व पायथन पोर्ट है।

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