pytigon_lib.schdjangoext.fastform
def form_from_str(input_str, init_data={}, base_form_class=forms.Form, prefix=""):
input_str: Form example in string format:
""" What is this? Name Second name:: name//Name!:: Description::_ Date::####.##.## Quantity::0 Amount!::9.99 Choose::[option1;option2 option3] Age::000 Code::**** """
Kolejne linie ciągu znaków zamieniane są na pola django.form Boolean CharField CharField z jawnie zadeklarowanym typem, :: odziela nazwę pola od typu pola CharField - jawnie zadeklarowany, name różne od title (konstrukcja name//title), pole wymagane (title zakończone !) TextField DateField IntegerField FloatField - pole wymagane (name/title zakończone wykrzyknikiem) ChoiceField, opcje oddzielone znakiem ";" lub znakiem nowej linii, opcje pomiędzy [ a ] IntegerField, max 3 digits CharField, max 4 chars
nazwa pola w przypadku gdy nie jest ona bezpośrednio wskazana (brak // w pierwszej sekcji) etykieta pola skonwertowana do małych liter, usunięte spacje i inne znaki nie będące literami i przycięta do 16 znaków