Kā izveidot veidlapu veidotāju
Veidlapu veidotājs ļauj cilvēkiem izveidot savas veidlapas — izvēlēties laukus, noteikt noteikumus, publicēt saiti — un pēc tam apkopo iesniegumus. Zem virsmas tas sastāv no trim daļām: veidlapas definīcijas, kas glabājas kā dati, renderētāja, kas definīciju pārvērš darbojošā veidlapā, un iesniegumu krātuves ar paziņojumiem un eksportu. Pirms tāda izveides pārbaudi, vai tev tiešām tas vajag: ja vajag tikai kontaktu vai pieteikuma veidlapu, izveido to tieši un izlaid veidotāju.
Vai tev vispār vajag veidotāju?
| Tava situācija | Ko veidot |
|---|---|
| Viena vai divas veidlapas, kas reti mainās | Pašas veidlapas. Skat. kā pievienot kontaktu veidlapu. |
| Daudz veidlapu, ko veido nespeciālisti tavā komandā | Iekšēju veidlapu veidotāju |
| Veidlapas ir daļa no tava produkta (klienti veido savas) | Veidlapu veidotāju ar kontiem, ierobežojumiem un iegulšanu |
| Galvenokārt vajag aptaujas rezultātus un diagrammas | Aptaujas lietotni |
Veidotājs ir lielāks projekts nekā veidlapa, jo katram lauka tipam jādarbojas redaktorā, publiskajā veidlapā, validācijā, krātuvē, paziņojumos un eksportā.
Ko vajag veidlapu veidotājam
Veidlapu definīcijas
Glabā katru veidlapu kā lauku sarakstu, saglabātu strukturētos datos (JSON Postgres kolonnā darbojas labi). Lauks varētu izskatīties šādi:
- id — stabils ID, kas nemainās, pat ja etiķete mainās
- tips — teksts, e-pasts, skaitlis, garš teksts, izvēle, izvēles rūtiņa, datums, fails
- etiķete un palīdzības teksts
- obligāts, min / max, atļautie failu tipi
- opcijas izvēles laukiem
- secība un, pēc izvēles, nosacījums („rādīt tikai, ja lauks X ir Y”)
Redaktors rediģē šo sarakstu; publiskā veidlapa to nolasa. Tieši tāds ir viss triks: nav vajadzīgs jauns kods katrai veidlapai.
Iesniegumi
- Iesniegumi — veidlapa, veidlapas versija, iesniegšanas laiks, atbildes, kas piesaistītas lauka ID, statuss (jauns, izlasīts, arhivēts).
- Faili — augšupielādētie faili pieder failu krātuvei, un iesniegums glabā tikai atsauci, nekad failu pašu datubāzes rindā.
Lapas
- Veidlapu saraksts ar iesniegumu skaitu.
- Redaktors — pievieno, pārkārto un konfigurē laukus, ar dzīvu priekšskatījumu blakus.
- Iestatījumi — apstiprinājuma ziņojums vai pāradresācija, paziņojumu e-pasti, atvēršanas/aizvēršanas datumi, iesniegumu ierobežojums.
- Publiskā veidlapa savā saitē un iegulstāma versija citām tīmekļa vietnēm.
- Iesniegumu tabula ar meklēšanu, statusu, detalizētu skatu un CSV eksportu.
Lēmumi un kompromisi
Versiju veidošana. Kāds pēc 200 iesniegumiem pārdēvēs „Tālrunis” par „Mobilā tālruņa numurs”. Ja atbildes glabājas pēc lauka ID un katrs iesniegums ieraksta veidlapas versiju, vecie iesniegumi joprojām rādīs pareizās atbildes. Bez tā tavi dati klusi sajauksies.
Validācija notiek divreiz. Pārbaudi laukus pārlūkprogrammā ātrai atgriezeniskajai saitei un atkal serverī, jo ikviens var nosūtīt datus tieši uz tavu galapunktu. Svarīga ir serverī veiktā pārbaude.
Failu augšupielādes. Tās nes krātuves izmaksas, izmēra ierobežojumus, failu tipu pārbaudi un privātuma jautājumus (CV, identifikācijas dokumenti, medicīniskās veidlapas). Ierobežo tipus un izmērus un padari augšupielādētos failus pēc noklusējuma privātus, lasāmus tikai veidlapu īpašniekiem. Skat. kā pievienot failu augšupielādi savai lietotnei.
Paziņojumi. „Nosūti man e-pastu, kad kāds iesniedz” ir gaidīts. Tam vajag e-pasta nodrošinātāju un API atslēgu; skat. kā sūtīt e-pastus no savas lietotnes.
Mēstules. Publisku veidlapu atradīs boti. Izmanto medus lauku (paslēptu cilvēkiem, bet aizpildītu botiem), ierobežojumus pēc IP, validāciju serverī un, ja vajag, CAPTCHA pakalpojumu.
Iegulšana. iframe iegulšana ir vienkāršākais un drošākais veids, kā veidlapu ievietot citā tīmekļa vietnē. Skripta iegulšana izskatās dabiskāka, bet ir grūtāk izveidojama un nodrošināma.
Nosacītā loģika. „Rādīt šo lauku tikai, ja…” ir populāra, bet palielina testēšanas apjomu. Pievieno to pēc tam, kad pamatfunkcijas ir stabilas.
Uzvedne, kas strādā
Izveido veidlapu veidotāja tīmekļa lietotni manai komandai. Pieteikušies lietotāji veido veidlapas redaktorā ar dzīvu priekšskatījumu. Lauku tipi: īss teksts, garš teksts, e-pasts, skaitlis, datums, viena izvēle, izvēles rūtiņas un failu augšupielāde. Katram laukam ir stabils ID, etiķete, palīdzības teksts, obligāta atzīme un tipam specifiski noteikumi (min/max, opcijas, atļautie failu tipi un 10 MB izmēra ierobežojums). Glabā veidlapas definīciju kā JSON ar versijas numuru, kas palielinās pie katras publikācijas. Katrai veidlapai ir publiska saite un iframe iegulšanas kods. Validē iesniegumus serverī pret publicēto versiju, glabā atbildes pēc lauka ID ar veidlapas versiju un ievieto augšupielādētos failus privātā failu krātuvē. Pievieno paslēptu medus lauku un ierobežojumu pēc IP. Veidlapu īpašnieki redz iesniegumu tabulu ar statusu (jauns, izlasīts, arhivēts), detalizētu skatu un CSV eksportu. Glabā visu datubāzē. Nosacīto loģiku un e-pasta paziņojumus atstāj vēlākam laikam.
Būvēšanas soļi
- Redaktors un definīcija. Izveido veidlapu ar visiem lauku tipiem un aplūko saglabāto JSON kopā ar aģentu. Vai tas ir tīrs un stabils?
- Publiskā veidlapa. Aizpildi to telefonā. Pārbaudi validācijas ziņojumus un apstiprinājuma ekrānu.
- Validācija serverī. Liec aģentam nosūtīt iesniegumu, kas pārkāpj noteikumus, tieši uz serveri, izlaižot lapu. Tam jātiek noraidītam.
- Versijošana. Pārdēvē un pārkārto laukus pēc dažiem iesniegumiem. Vecajiem iesniegumiem jāturpina rādīt pareizās atbildes.
- Augšupielādes. Pamēģini pārāk lielu failu un nepareizu tipu. Pārliecinies, ka svešinieks nevar atvērt augšupielādētu failu, uzminot saiti.
- Iesniegumu tabula un eksports. Pārbaudi CSV eksportu ar komatiem, rindu pārtraukumiem un atstarpju rakstzīmēm atbildēs.
- Paziņojumi, iegulšana, loģika. Pievieno tos pa vienam.
Biežākās kļūdas
- Atbilžu glabāšana pēc etiķetes. Etiķetes mainās. Izmanto stabilus lauku ID.
- Validācija tikai pārlūkprogrammā. Tā ir ērtība, nevis aizsardzība.
- Publiski augšupielādēti faili. Veidlapās bieži tiek vākti dokumenti, ko cilvēki nevēlētos atklāt.
- Nav aizsardzības pret mēstulēm. Publiska veidlapa var piepildīties ar mēsliem dažu dienu laikā.
- Veidotājs vienai veidlapai. Izveido tieši veidlapu.
- Neierobežoti iesniegumi publiskā produktā. Ja klienti veido veidlapas, uzstādi ierobežojumus pēc plāna, citādi viena populāra veidlapa var palielināt tavu hostinga rēķinu.
Kad gatavs produkts ir labāka izvēle
Hostētie veidlapu rīki ir lieliski un lēti lielākajai daļai vajadzību. Tie jau ir atrisinājuši iegulšanu, mēstules, maksājumus, integrācijas un pieejamību desmitiem lauku tipu. Ja tavai komandai vajag tikai veidlapas, izmanto kādu no tiem — skat. Typeform alternatīvas un Google Forms alternatīvas.
Veido pats, ja iesniegumiem jāatrodas kopā ar taviem datiem (barojot CRM vai klientu portālu, ko vadi tu), ja pēc iesniegšanas vajag darbplūsmas, ko rīki nevar veikt, ja datu atrašanās vieta vai īpašumtiesības ir prasība, vai ja veidlapas ir pārdota produkta funkcija.
Veidots ar Mythex
Mythex tu apraksti veidotāju tērzēšanā un pārbaudi redaktoru un publisko veidlapu blakus tiešraides priekšskatījumā. Mythex pievieno īpašu datubāzi veidlapu definīcijām un iesniegumiem, un automātiski iespējo failu krātuvi, kad lietotnei vajag augšupielādes (Bezmaksas plānā ierobežota līdz 1 GB). Paziņojumu e-pasti iet caur nodrošinātāju, kuru pievieno ar savu atslēgu. Publicē lietotni mythex.ai saitē vai savā domēnā Pro plānā, un publiskās veidlapu saites darbojas no turienes.
Jautājumi
Kā veidlapu veidotājs glabā veidlapas?
Parasti kā veidlapas definīciju: lauku sarakstu, katram ar tipu, etiķeti, validācijas noteikumiem un secību, saglabātu strukturētos datos, piemēram, JSON formātā. Viena un tā pati definīcija vada gan redaktoru, gan publisko veidlapu, tāpēc lauka pievienošanai nav vajadzīgs jauns kods.
Kā vajadzētu glabāt veidlapu iesniegumus?
Saglabā katru iesniegumu ar atsauci uz veidlapas versiju, pēc kuras tas tika aizpildīts, un atbildēm, kas piesaistītas lauka ID. Tā vēlāk lauka pārdēvēšana vai pārkārtošana neizjauc vecos iesniegumus.
Kā apturēt mēstules publiskā veidlapā?
Apvieno paslēptu medus lauku, ierobežojumu pēc IP adresēm, validāciju serverī un, ja mēstules turpinās, CAPTCHA pakalpojumu. Nekad nepaļaujies tikai uz pārbaudēm, kas notiek tikai pārlūkprogrammā.
Vai vajag pilnu veidlapu veidotāju vai tikai veidlapu?
Ja vajag vienu vai divas fiksētas veidlapas, izveido tieši tās — tas ir daudz vienkāršāk. Veidlapu veidotājs ir vērts, ja nespeciālistiem jāveido un jāmaina daudz veidlapu bez izstrādātāja palīdzības.