2009-12-02 16 views
6

मेरे पास एक सामग्री प्रकार रेस्तरां है। प्रत्येक रेस्तरां के लिए, मैं अपने मेनू को रिकॉर्ड करना चाहता हूं।ड्रूपल सामग्री प्रकार (भोजनालय) डिजाइन

नमूना डेटा ऐसा दिखाई देगा:

पेय पदार्थ

  • कोक                                                 $ 4,99
  • खनिज पानी                     $ 2,99

कॉकटेल

  • ब्लू लैगून                           $ 9,99

    (एक्स वाई आदि के साथ संयुक्त)

  • लाल नीलमणि                       $ 9,99

    (एक और एक्स blah के साथ मिश्रित)

पास्ता

  • क्लासिक bolognaise       $ 13,69

    (पास्ता अपनी पसंद हमारे घर का बना विशेषता के साथ मिश्रित बोलोग्नाइज़ सॉस)

  • 0 श्रेणियों, मेनू नाम, विवरण, मूल्य:

आप देख सकते हैं, मेनू में कई घटक शामिल थे। यह भी अच्छा होगा अगर हम श्रेणियों को पुनर्व्यवस्थित भी कर सकें (कुछ रेस्तरां अपने पेय पदार्थों को उनके मुख्य भाग से पहले प्रदर्शित करने के लिए पसंद कर सकते हैं, जबकि अन्य विपरीत पसंद करते हैं)।

  1. आप सामग्री प्रकार के डिज़ाइन की अनुशंसा कैसे करेंगे?
  2. यदि यह नोड संदर्भ का उपयोग करना था, तो क्या मुझे मेनू संपादन फ़ॉर्म से मेनू को संपादित करने की अनुमति देने के लिए कोई आसान तरीका/मॉड्यूल है? (हो सकता है कि कुछ मेनू के लिए additionnal टैब)

उत्तर

3

तरह से मैं यह करना होगा शायद इस तरह होगा:
ध्यान दें, मैं Drupal के विकास के लिए इस्तेमाल किया है, इसलिए मैं इनमें से एक बहुत कुछ कर करने में सक्षम होगा चीजें बहुत तेजी से, क्योंकि मैंने हाल ही में कुछ समय पहले किया था। यह आपके लिए सबसे अच्छा विकल्प नहीं हो सकता है।

  1. मॉड्यूल में मैं इस, रेस्तरां और मेनू_इटम के लिए दो सामग्री प्रकार बनाएगा।
  2. रेस्तरां शायद शीर्षक होगा और दूसरा फ़ील्ड मैं मेनू आइटम प्रकारों के लिए उपयोग करूंगा। मुझे यकीन नहीं है कि मैं इसे कैसे करूँगा, यह इस बात पर निर्भर करता है कि परियोजना का भविष्य क्या होगा। मैं रेस्तरां सामग्री प्रकार नहीं बनाना चुन सकता हूं या इसके लिए विशेष कुछ नहीं कर सकता, और मेनू आइटम प्रकारों के क्रम के लिए पूरी तरह से एक टेबल बना सकता हूं।
  3. अधिकांश मेनू आइटम सामग्री प्रकार सीसीके के माध्यम से किया जा सकता है, लेकिन शायद मैं उनके ऑर्डरिंग के लिए एक टेबल और कस्टम फ़ील्ड बनाउंगा (यह कुछ ऐसा है जो मैंने कुछ बार किया है इसलिए मेरे पास जेएस खींचने योग्य बनाने के लिए स्निपेट है ऑर्डरिंग सिस्टम जैसे सीसीके फ़ील्ड ऑर्डर करने के लिए करता है)। अगर मुझे अलग-अलग मामलों में बेहतर नियंत्रण की आवश्यकता है, तो मुझे खुद को कीमतों को संभालने का भी चयन करना पड़ सकता है, जैसे एक्सचेंज गणना आदि।
  4. श्रेणियों के लिए मैं वर्गीकरण का उपयोग करूंगा (वर्गीकरण का उपयोग करके एसईओ जैसे कई अतिरिक्त बोनस देता है) ।
  5. मैं मेनू आइटम को जो भी मेनू होना चाहता हूं उसे बांधने के लिए नोड संदर्भ का उपयोग करता हूं।
  6. शेष मेनू आइटम फ़ील्ड केवल टेक्स्ट फ़ील्ड हैं जो सीसीके अच्छी तरह से संभाल लेंगे।
  7. मैं रेस्तरां नोड्स के लिए मेनू आइटम लाने के लिए node_api का उपयोग करूंगा, ताकि थीमिंग के साथ, रेस्तरां नोड दृश्य मेनू का प्रदर्शन होगा (यदि यह मुख्य विशेषता है, तो मैं इसके लिए एक टैब बनाउंगा मेनू और नोड दृश्य पर रेस्तरां विवरण रखें)।
  8. कुछ form_alter के साथ मैं एक ऑर्डरिंग सिस्टम तैयार करूंगा जो श्रेणियों को ऑर्डर करने के लिए मैंने जो भी सिस्टम चुना है, उससे जुड़ा हुआ है।
  9. मैं व्यवस्थापक को नोड डिस्प्ले में मेनू आइटमों के क्रम को बदलने में सक्षम हो सकता हूं, या इसके लिए एक टैब बना सकता हूं। निर्भर करता है कि ग्राहक क्या चाहता है।

यह थोड़ा डेवलपर भारी है, क्योंकि इनमें से बहुत सी चीजों को कोड करने की आवश्यकता होगी। आप सिर्फ सीके और विचारों का उपयोग करके बहुत दूर जा सकते हैं, लेकिन इसके बजाय मैं इसके लिए एक मॉड्यूल तैयार करूंगा। इसका कारण यह है कि यदि ग्राहक चाहते हैं कि यह आधे साल में बदल जाए या अतिरिक्त सुविधाओं के साथ आ जाए, तो मुझे इसे लागू करने में बहुत कठिन समय मिल सकता है। सीके और विचारों के साथ एकीकृत करना बहुत मुश्किल और समय लेने वाला हो सकता है, इसलिए थोड़ा अतिरिक्त समय का उपयोग करके, यह बहुत अधिक लचीला और विस्तार योग्य बना देगा। मैंने अलग-अलग चीजें भी की हैं जिनके कुछ सामान्य आधार हैं, इसलिए मैं बहुत सारे कोड सी/पी करने में सक्षम हूं, जो मुझे अच्छी तरह से पता है, और इन चीज़ों में से कुछ के लिए इसे यहां और यहां समायोजित करें। यह भी आंशिक रूप से मुझे इस मार्ग पर जाने का कारण है, क्योंकि अकेले सीके और विचारों का उपयोग मुझे इतना समय नहीं बचाएगा कि

+0

मुझे यह प्रस्ताव पसंद है, हालांकि मैं इसके लिए तब तक नहीं जाऊंगा जब तक कि परियोजना के अन्य हिस्सों को मेनू के विभिन्न हिस्सों को कम करने की आवश्यकता नहीं होती है (लेकिन यह विकास दर्शन का विषय है, इसलिए मैं इसके लिए जाने में कमी नहीं कर रहा हूं समाधान किसी भी तरह से खराब!)। मुझे विशेष रूप से बिंदु # 4 पसंद है क्योंकि यह सच वर्गीकरण कई डिज़ाइन फायदे लाता है - एसईओ पॉइंट googletorp के बगल में पहले से ही उल्लेख किया गया है)। – mac

+0

@mac लेने का मार्ग परियोजना पर बहुत निर्भर करता है। मेरी कुछ परियोजनाएं बहुत अच्छी तरह परिभाषित हैं, और ऐसे मामले में, मुझे पता चलेगा कि यह सब आवश्यक होगा या नहीं, या मैं कम कोड के साथ कुछ और सरल बना दूंगा। लेकिन अगर यह ऐसी साइट के लिए था जो समय के साथ विभिन्न क्षेत्रों में विस्तारित किया जाएगा, तो मैं चीजों को अधिक नियंत्रण में रखना पसंद करूंगा। लेकिन जैसा कि आप कहते हैं, यह विकास दर्शन का विषय है। मेरे लिए इस रणनीति का पक्ष लेने का एक कारण, मैं भी पिछले महीने या दो काम कर रहा हूं जो ड्रूपल के साथ नहीं रहा है :) – googletorp

4

रेस्टॉरंट सामग्री प्रकार। व्यवसाय के नाम, व्यापार पता, फोन, फैक्स, वेबसाइट, ईमेल, आईएम, ट्विटर, व्यापार मालिक, व्यापार संपर्क (प्रबंधक की तरह), रेस्तरां विवरण, लोगो, और Google मानचित्र स्थान लिंक (या स्थान और जीएमएपी मॉड्यूल लागू करें) के लिए फ़ील्ड। शायद रेस्तरां की उपयोगकर्ता रेटिंग सक्षम करने के लिए पांच सितारा मॉड्यूल का उपयोग करें।

खाद्य हार्दिक वर्गीकरण (इसके लिए मॉड्यूल की आवश्यकता है)।खाद्य श्रेणियां पेय पदार्थ (शराब, गैर-शराब, आदि), सूप, सलाद, नाश्ते, दोपहर का भोजन, रात का खाना, मिठाई, प्रवेश, सैंडविच, समुद्री भोजन इत्यादि

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

छवियों के संबंध में, छवि कैश का उपयोग करें सभी चित्रों के कई अलग-अलग उपयोगी आकार उत्पन्न करें, ताकि आप छोटे थंबनेल, मध्यम आकार की छवियां, और व्यंजनों के पूर्ण आकार के भव्य चित्रों को बना सकें।

सीएसएस पर प्रदर्शित करें जो कुछ हद तक मेनू जैसा दिखता है। Chilis.com जैसी राष्ट्रीय रेस्टोरेंट वेबसाइटों को देखने के लिए देखें कि वे इसे कैसे करते हैं। प्रत्येक रेस्तरां के लिए खाद्य वर्गीकरण शर्तों के मेनू लिंक प्रदान करें, और खुला फ़िल्टर वाले रेस्तरां के दृश्य प्रदान करें ताकि उपयोगकर्ता आसानी से प्रकार, स्थान, स्टार रेटिंग इत्यादि द्वारा रेस्तरां ढूंढ सकें।

एक मजेदार प्रोजेक्ट की तरह लगता है। जब आप समाप्त कर लेंगे तो मैं एक केस स्टडी प्रकाशित करना चाहता हूं।

+0

किसी ने इस -1 को चिह्नित किया? उपयोगी नहीं? कोई विचार क्यों? मैंने सोचा कि यह उपयोगी था, मैंने एक समाधान प्रदान किया जो उनके प्रश्न के सभी हिस्सों का उत्तर देता था। शायद मुझे कुछ याद आया? कृपया मुझे बताओ कि मैंने क्या गलत किया? मुझे लगता है कि जो लोग उत्तर देते हैं उन्हें समझाने के लिए मजबूर होना चाहिए कि उन्होंने ऐसा क्यों किया, रचनात्मक प्रतिक्रिया प्रदान करने के लिए क्यों दिया गया उत्तर उपयोगी नहीं था। अन्यथा यह उत्तरदाताओं के बीच प्रतिस्पर्धा की बदसूरत भावना होनी चाहिए, जैसे कि अमेज़ॅन पर लेखकों ने अपने स्वयं के स्वरूप को बेहतर बनाने के लिए प्रतिस्पर्धी किताबों की समीक्षा की। क्या कोई विकी है जो इस मुद्दे पर चर्चा करती है? –

+0

इस तरह के मुद्दों पर चर्चा करने के लिए http://meta.stackoverflow.com है। और हां, इस पर पहले से ही एक चर्चा चल रही है, लेकिन परिणाम अब तक प्रतीत होता है: नहीं, प्रणाली उतनी अच्छी है जितनी है। मेरा समाधान भी कम हो गया क्योंकि किसी को इसके दृष्टिकोण को पसंद नहीं आया, हालांकि - आपकी तरह - यह तकनीकी रूप से बिल्कुल ध्वनि है: मैं कहूंगा कि एसओ पर सामान्य शैली/दृष्टिकोण/दर्शन के मामले के लिए कभी-कभी कम हो जाना सामान्य बात है। यदि उत्तर में वास्तविक गलतियों/गलत जानकारी हैं - हालांकि - कोई आपको बताएगा कि एक मिनट के एक अंश में! ;) – mac

+0

महान समाधान! मुझे यह बहुत पसंद है :) +1 – giorgio79

1

मुझे ऐसा कुछ करना था। मैंने इसे पैनल, विचार और सीके के साथ हल किया। मैंने एक नोड प्रकार 'रेस्तरां' और एक नोड प्रकार 'menu_item' बनाया है। मेनू_इटम वर्गीकरण एक विशिष्ट शब्दावली का उपयोग करके सेट किया गया है। मैंने पथ रेस्तरां रेस्तरां/नाम के लिए मेनू प्रदर्शित करने के लिए पैनलों का उपयोग किया, फिर मेनू में आइटम दिखाने के लिए + cck दृश्य (मैंने रेस्तरां में आइटम लिंक करने के लिए नोड संदर्भों का उपयोग किया)। तो मैंने वर्गीकरण द्वारा शब्द को समूहीकृत किया: शब्द क्षेत्र।

1

पहला विचार मुझे क्या करना यह कुछ इस प्रकार हो सकता है था:

  • खाद्य सामग्री प्रकार के साथ: नाम (शीर्षक), विवरण (शरीर) और कीमत कई खाद्य नोड के साथ
  • भोजनालय सामग्री प्रकार -reference क्षेत्रों
  • शब्दावली पेय पदार्थ, कॉकटेल, पास्ता, जैसे शब्दों से भोजन करने के लिए जुड़े .. (और मैं यकीन है कि एक मॉड्यूल आप वर्गीकरण शर्तों वजन निर्दिष्ट कर सकते हैं कि वहाँ हूँ)

इस तरह, आप अपना डेटा स्टोर कर सकते हैं।

प्रदर्शित भाग के लिए, आप इस्तेमाल कर सकते हैं:

  1. (बेहतर दृष्टिकोण) एक कस्टम नोड restaurant.tpl.php कि वर्गीकरण अवधि के आधार पर वर्गीकृत भोजन दिखा स्वरूपित पृष्ठ बनाता है (मैं काफी यकीन है कि आप टेम्पलेट चर के माध्यम से संदर्भित नोड्स तक सीधे पहुंच है .. मैं इसका परीक्षण करने जा रहा हूं और आपको बताता हूं)
  2. (व्यवस्थापक पैनल के माध्यम से किया जा सकता है) संदर्भित क्षेत्र में रखे गए ब्लॉक में एक दृश्य में संदर्भ नोड्स, "खाद्य श्रेणी" शब्दावली पर वर्गीकरण अवधि द्वारा समूहीकृत तालिका के रूप में स्वरूपित। आप तर्क का उपयोग करके वर्तमान नोड निड (फ़िल्टरिंग के लिए प्रयुक्त) प्राप्त कर सकते हैं।

मैं पहली पसंद की अनुशंसा करता हूं क्योंकि यह अधिक मानक-अनुपालनशील है, निष्पादन में तेज़ है और कुछ संभावित समस्याओं से बच सकता है जो दृश्यों + ब्लॉक मार्ग से आ सकते हैं।

+0

(शायद सबसे अच्छा तरीका एक नोड मॉड्यूल लिखना होगा जो यह एक बहु-मूल्य AHAH रूप बनाकर करता है, श्रेणी/शीर्षक/मूल्य/विवरण के साथ, लेकिन मुझे लगता है कि यह नहीं है जिस तरह का समाधान आप ढूंढ रहे हैं ..) – redShadow

+0

.. और नोड-संदर्भ का उपयोग करके, आपके पास साझा खाद्य परिभाषाओं का लाभ भी है (उदाहरण के लिए यदि लाल शराब की कीमत में परिवर्तन होता है, तो आप इसे सभी पर स्वचालित रूप से अपडेट कर सकते थे मेनू, सिर्फ एक नहीं ..)। – redShadow

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