मौजूदा खेतों का उपयोग करने का उचित तरीका क्या है?


13

मैं ड्रुपल शुरुआत करने वाला हूं। मैं सामग्री प्रकारों में फ़ील्ड जोड़ने के बारे में थोड़ा भ्रमित हूं।

केस 1: मान लीजिए कि मेरे पास तीन सामग्री-प्रकार हैं Book, Articleऔर White Paper। मैंने Authorsशब्दावली बनाई जिसमें सभी लेखकों की सूची है।

  1. अब, क्या मुझे प्रत्येक सामग्री-प्रकार के लिए "लिखित द्वारा" फ़ील्ड (लेखकों के लिए-संदर्भ) का निर्माण करना चाहिए या एक सामग्री-प्रकार के लिए फ़ील्ड बनाना चाहिए और इसे अन्य सामग्री प्रकारों में उपयोग करना चाहिए?

  2. किसी भी तरीके के फायदे / नुकसान क्या हैं?

  3. यदि मैं एक सामग्री-प्रकार से पुन: उपयोग किए गए फ़ील्ड को हटाता हूं तो क्या होगा? क्या यह अन्य सभी में नष्ट हो जाता है?

केस 2: मैंने सामग्री प्रकार फॉलोइंग की है: (निर्दिष्ट क्षेत्र आवश्यकताओं के साथ)

+--------------+----------------------+
| Content Type | Field Required       |
+--------------+----------------------+
| Book         | Year of publication  |
+--------------+----------------------+
| Presentation | Date of Presentation |
+--------------+----------------------+
| Article      | Date of Publication  |
+--------------+----------------------+
| Event        | Held On              |
+--------------+----------------------+

मुझे क्या करना चाहिए? क्या मुझे एक सामग्री-प्रकार के लिए एक एकल फ़ील्ड बनाना चाहिए और इसे अन्य सभी सामग्री-प्रकारों के लिए उपयोग करना चाहिए या प्रत्येक सामग्री-प्रकार के लिए फ़ील्ड बनाना चाहिए?

मौजूदा फ़ील्ड को उचित रूप से पुन: उपयोग कब और कैसे करें, मुझे स्पष्ट रूप से समझने में सहायता करें।

जवाबों:


8

क्या मुझे प्रत्येक सामग्री-प्रकार के लिए "लिखित द्वारा" फ़ील्ड (लेखकों के लिए अवधि-संदर्भ) या एक सामग्री-प्रकार के लिए फ़ील्ड बनाना चाहिए और इसे अन्य सामग्री प्रकारों में उपयोग करना चाहिए?

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

किसी भी तरीके के फायदे / नुकसान क्या हैं?

एक लाभ यह है कि आप सभी सामग्री प्रकारों को एक फ़ील्ड द्वारा क्वेरी कर सकते हैं। इसलिए यदि आप स्वयं को किसी एक लेखक द्वारा लिखित सभी सामग्री या सभी लेखकों द्वारा लिखी गई सभी सामग्री को देखना चाहते हैं, तो ऐसा करने के लिए एक दृश्य बनाना आसान होगा। लेकिन यह केवल उपयोगी है अगर आपको इसकी आवश्यकता है, तो जाहिर है। मुझे लगता है कि मुख्य बात यह है कि क्षेत्र का उपयोग मामला वास्तव में या तो विधि के सापेक्ष फायदे / नुकसान तय करेगा।

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

यदि मैं एक सामग्री-प्रकार से पुन: उपयोग किए गए फ़ील्ड को हटाता हूं तो क्या होगा? क्या यह अन्य सभी में नष्ट हो जाता है?

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

मामले 2 पर, और बस अपने आप से यह पूछें ...

यह ध्यान में रखते हुए कि आपके पास एक ही फ़ील्ड के प्रत्येक सामग्री प्रकार के उदाहरण के लिए अलग-अलग लेबल हो सकते हैं, क्या इससे आपको डेटा के बीच अंतर जानने के लिए पर्याप्त दृश्य (या डेटा-लीड) क्यू मिलेंगे?

यदि हां, तो ऊपर बताए गए फायदों को प्राप्त करने के लिए एकल दिनांक फ़ील्ड का उपयोग करें। यदि नहीं, तो यह आपके डेटा डिज़ाइन के लिए अलग फ़ील्ड रखने के लिए अधिक समझ में आता है।

यह सब आपकी विशेष वेबसाइट के लिए उपयुक्त है, लेकिन उम्मीद है कि ऊपर आपको आगे बढ़ने के कुछ तरीके देगा।


मुझे यह समझ में नहीं आया:Keeping in mind that you can have different labels for each content type's instance of the same field, will that give you enough of a visual (or data-led) cue to let you know the differences between the data?
पंजा

4
मेरा सिर्फ इतना मतलब था कि आपके डेटा पर क्या करना है, इसके आधार पर आपको चुनना है - उदाहरण के रूप में प्रकाशन और प्रस्तुति की तारीख लेना, क्या आपके लिए यह मायने रखता है कि क्या वे अलग हो गए हैं? क्या आपको उस तिथि के आधार पर सामग्री को फ़िल्टर करने की आवश्यकता है? यदि आप किसी एक फ़ील्ड का उपयोग करते हैं और उस फ़ील्ड को फ़िल्टर करते समय सभी सामग्री प्रकारों के लिए डेटा प्राप्त करते हैं, तो क्या यह आपको अवांछित परिणाम देगा ? वे सवाल खुद से पूछने के लिए तरह हैं। यह वास्तव में एक डेटा डिजाइन मुद्दा है, ड्रुपल की इकाई / क्षेत्र प्रणाली इसके लिए केवल अमूर्त परत है। यदि ड्रुपल के बाहर इसे डिजाइन करते हैं, तो क्या आप उस डेटा को एक ही तालिका में डालेंगे?
क्लाइव
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.