लंबे फ़ॉर्म को चरणों में बदलें, बिना एंडपॉइंट बदले
चरण लंबे फ़ॉर्म को स्क्रीनों में बाँटते हैं, एंडपॉइंट को छुए बिना: एक ही POST हर फ़ील्ड ले जाता है, ब्रेक नीचे वाले फ़ील्ड के साथ चलता है, और फ़ॉर्म एक पृष्ठ पर लौट आता है।
यह पोस्ट मशीन द्वारा अनुवादित है। अंग्रेज़ी में मूल पोस्ट पढ़ें

लंबा फ़ॉर्म सवालों का एक ही पृष्ठ होता है, और लोग उसी एक पृष्ठ पर चले जाते हैं। चरण उसे स्क्रीनों में बाँटते हैं। जो वे नहीं करते वह है एंडपॉइंट बदलना: फ़ॉर्म अब भी एक बार जमा होता है, हर फ़ील्ड के साथ, उसी पते पर जो आपका मार्कअप पहले से बताता है।
चरण प्रस्तुति का फ़ैसला है
चरण फ़ॉर्म के फ़ील्डों का एक नामित समूह है जो सबमिट करने वाले को एक बार में एक स्क्रीन के रूप में दिखता है। फ़ॉर्म को कई चरणों में बाँटने पर अंतर्ग्रहण, कोटा, स्पैम स्कोरिंग या प्रतिधारण में कुछ नहीं बदलता: निर्णायक को वही बॉडी मिलती है जो पहले मिलती थी, और एक सबमिशन एक गिना गया सबमिशन ही रहता है।
यही पूरा अनुबंध है, इसीलिए चरण जोड़ना प्रस्तुति का बदलाव है, आपके इंटीग्रेशन का नहीं। आपके HTML का पता, आपके मार्कअप के फ़ील्ड नाम, और आपके प्लान पर सबमिशन की गिनती — सब अपनी जगह रहते हैं। चरण सशुल्क प्लान पर उपलब्ध हैं।
ब्रेक उसी फ़ील्ड का है जो उसके नीचे है
बिल्डर में चरण ब्रेक उस फ़ील्ड पर एक चिह्न है जो अगला चरण खोलता है — यानी उस फ़ील्ड के ऊपर खींची गई रेखा जैसा। वह फ़ील्ड के साथ चलता है, इसलिए फ़ील्ड खींचने पर ब्रेक भी उसके साथ चला जाता है। चरण ब्रेक दो सवालों के बीच गिराया गया विभाजक नहीं है; वह एक फ़ील्ड का गुण है, और फ़ील्ड सूची को ऊपर से पढ़ना चरणों का क्रम पढ़ना है।
इसके दो नतीजे हैं। फ़ील्डों का क्रम बदलने से चरणों का क्रम बदल जाता है, इसलिए जो चरण आपको पसंद था वह ऊपर वाले में समा सकता है। और खाली चरण बंद हो जाता है: FormFlow ऐसी स्क्रीन नहीं रखता जिस पर कुछ न हो।
एक POST हर फ़ील्ड ले जाता है
फ़ॉर्म एक बार में एक चरण बनाता है, लेकिन ब्राउज़र अब भी एक ही अनुरोध भेजता है। सबमिट करने वाले ने जो कुछ उत्तर दिया, सब एक साथ पहुँचता है, फ़ॉर्म के स्कीमा में दिए फ़ील्ड नामों की कुंजियों के साथ। एंडपॉइंट का संदर्भ /docs/api में है: एक POST, एक बॉडी, एक उत्तर।
curl -X POST https://formflow.digital/api/v1/f/ff_live_example \
-H 'Content-Type: application/json' \
-d '{
"name": "Lena Ortiz",
"email": "lena@example.com",
"company": "Ortiz Studio",
"budget": "5000",
"brief": "A one-page site, live in June."
}'पाँच फ़ील्ड, तीन चरण, एक अनुरोध। स्क्रीनों के बीच मिलाने के लिए कोई आधा-अधूरा सबमिशन नहीं, दोबारा कोशिश करने के लिए दूसरा अनुरोध नहीं, और हर चरण के लिए कोई रसीद नहीं। अनुरोध विफल हुआ तो कोशिश विफल हुई; सफल हुआ तो FormFlow के पास एक सबमिशन है और वह उसे एक बार परखता है।
फ़ॉर्म कब सपाट बनता है
फ़ॉर्म हर फ़ील्ड को एक पृष्ठ पर, एक ही सबमिट बटन के नीचे, तीन स्थितियों में बनाता है: वह कोई चरण घोषित नहीं करता, टीम का प्लान अब उन्हें अनुमति नहीं देता, या सबमिट करने वाले का ब्राउज़र JavaScript नहीं चलाता। सपाट बनावट बाद में जोड़ा गया विकल्प नहीं है; चरण उसी के चारों ओर की परत हैं।
जिसका स्क्रिप्ट बंद है उसे वही फ़ील्ड, वही नाम और वही सबमिट बटन मिलता है — बस एक ही पृष्ठ पर। फ़ॉर्म टूटा नहीं है, वह सिर्फ़ एक पृष्ठ है। प्लान बदलने से चरण चले जाना भी कोई माइग्रेशन नहीं है: फ़ॉर्म अपने स्कीमा में चरण रखता है, अनुमति न होने तक सपाट बनता है, और अनुमति लौटने पर फिर चरणों में बनता है।
जहाँ चरण कुंद हैं
चरण स्कीमा को छिपाते भी नहीं। आप जो कुछ घोषित करते हैं वह अनुबंध में है, चाहे कोई स्क्रीन उसे दिखाए या नहीं, और कौन-से फ़ील्ड दिख रहे हैं इस पर ब्राउज़र की राय कभी तय नहीं करती कि क्या स्वीकार होगा। अगर किसी फ़ील्ड को सिर्फ़ अनदेखा नहीं, बल्कि अनुपस्थित होना चाहिए, तो उसे घोषित न करें।
v1.0.0 की बदलाव-सूची प्रविष्टि उस वाक्य को दर्ज करती है जिस पर यह सब टिका है: किसी भी HTML फ़ॉर्म को FormFlow की ओर इंगित करें, या होस्टेड पेज या एम्बेड इस्तेमाल करें, और वह हर सबमिशन को प्राप्त, फ़िल्टर, संग्रहीत और आगे भेजता है। चरण उस वाक्य के बीच का क्रम बदलते हैं। उसे लंबा नहीं करते।