
आलेख के दूसरे भाग में संस्करण 7 के लिए Drupal Forms API के अंतर शामिल हैं। लेख का यह भाग एक खुले विषय के रूप में प्रकाशित हुआ है, जो न केवल Drupal ब्लॉग के सदस्यों को दिखाई देता है। लेकिन मैं अपने आगे के लेख (विषय बनाने पर) बंद ब्लॉग लेखों के रूप में प्रकाशित करूंगा, ताकि उन लोगों के साथ हस्तक्षेप न करें जो ड्रुपल में रुचि नहीं रखते हैं।
पिछले लेख में , हमने एक सरल मॉड्यूल की कार्यक्षमता को देखा जो AJAX (ड्रुपल 6 में "एएचएएच" के रूप में संदर्भित) के रूप में एक दर्ज नाम लौटाया। अब संस्करण 7 की बारी है।
1. Drupal API 7 में सबसे दिलचस्प बदलाव
- Drupal 7 में, सूचना फ़ाइलें बदल गई हैं। अब, मॉड्यूल ( इंक और परीक्षण फ़ाइलों) में शामिल php कोड वाली किसी भी फाइल को जानकारी- फ़ाइल घोषित करने की आवश्यकता है। हमारे मामले में, कोई भी नहीं हैं।
- AJAX हैंडलिंग विधि बदल गई है। अब हुक_मेनू के माध्यम से प्रसंस्करण के लिए पथ निर्दिष्ट करना आवश्यक नहीं है, आप तुरंत कॉलबैक फ़ंक्शन निर्दिष्ट कर सकते हैं।
- अनुरोध प्रसंस्करण पथ अब प्रणालीगत है - / प्रणाली / ajax ।
- फॉर्म प्रसंस्करण बदल गया है। अब, कॉलबैक फ़ंक्शन को दो चर प्राप्त होते हैं - प्रपत्र की एक सरणी और प्रपत्र की स्थिति के लिए एक सूचक।
2. प्रपत्र कोड में परिवर्तन
प्रपत्र कोड में परिवर्तन मामूली हैं। Drupal Forms API के सिद्धांत समान हैं।
2. अनुरोध प्रसंस्करण कोड में परिवर्तन
$ Form_state सरणी का मान काफी बड़ा है। यह
प्रपत्र और उसकी स्थिति के बारे में सभी डेटा संग्रहीत
करता है । वहाँ से हम अपने क्षेत्र के
नाम का मान लेते हैं।
यदि Drupal 6 में हमने
drupal_json () के माध्यम से सफल होने पर प्रदर्शित किया गया पाठ भेजा है, तो Drupal 7 में हम फॉर्म को फिर से बनाते हैं और
मार्कअप तत्व को इसमें जोड़ते हैं। Html मार्कअप को फॉर्म में आउटपुट करने के लिए मार्कअप का उपयोग किया जाता है। यह तत्व द्रुपाल के संस्करण 6 में भी मौजूद था - लेकिन संस्करण 7 में
इसका सिंटैक्स बदल गया है ।
अब, हमें फ़ॉर्म प्रदर्शित करने की आवश्यकता है। हम इसे अंतिम लेख से मानक कोड बना सकते हैं।
function render_fc_form() { $out = '<div id="fc-form-wrapper">'; $out .= drupal_render(drupal_get_form('fc_form')); $out .= '</div><!-- /.fc-form-->'; return $out; }
ध्यान दें कि Drupal 7 में कई और एपीआई परिवर्तन हैं। मॉड्यूल के लेखन (विषयों के लिए, एक अलग सूची) के बारे में संस्करण 6 के बाद Drupal API
में किए गए
परिवर्तनों की एक
सूची है ।
पूरे मॉड्यूल के साथ संग्रह डाउनलोड करें