acztery
16.02.2007, 23:16:15
Witam,
Mam taki kłopot natury logicznej. Klient zlecił możliwość definiowania pól jakie maja być w formularzu oraz które z nich jest wymagane.
Trzeba brać pod uwagę dwa aspekty
- nie mogę tworzyć nowych kolumn w bazie ( nie ma toworzenia nowej kolumny dla danego pola formularza )
- może zaistnieć sytuacja taka ze admin zdefiniuje jakies pola i może moze dodać nowe nie niszcząc struktury tego co było wcześniej.
Może jakieś wydajne, logiczne rozwiązana przychodzą Wam do głowy.?
NuLL
17.02.2007, 01:45:56
Takie cos to tylko w eZ Publishu
jastu
17.02.2007, 02:19:27
Hm.. jeśli nie będzie bardzo obciążona to może sqLite ? Nie można ograniczyć tego do kilku/nastu/dziesięciu/stu kombinacji ?
acztery
17.02.2007, 10:12:59
mysql starczy.
Ps ograniczać tzn co dac kolumny pole1,pole2,pole3 wtety napewno bedzie bezsens.... lepiej nie nadawać ograniczen na użytkowników nigdy nie wiadomo co przyjdzie klientowi do główy...
ale jak to przechowywać w 1 kolumnie , jak rozpoznawać, jak przechowywać dane . myślałem ze serializować samą strukturę katalogu ale obawaim sie ze jak cos sie usunie to sie formularz rozleci...
ograniczma sie juz tylko do ( input, texarea i select )
NULL trzeba to napisać samemu a osobiscie mysle ze EZ to jest do kitu masa narzędzi które są w zasadzie nie potrzebne ale robią to samo ale w innym stopniu niz inne narzędzia z EZ...
Pisze swoje cms i prawie gotowy ale klient chce taką opjce pomyślałem ze może byc wiecej takich osob wiec pisze takie cos na stałe.
orson
18.02.2007, 12:38:27
witam
tworzysz tabele forms:
id, name, label, type, form_id, extra, ord, default_value, required, deleted
id - wiadomo
name - name=""
label - tekst wyświetlany obok
type - typ,
form_id - numer forma - pobieranie forma w całości: where form_id = 'id'
extra - serializowana tablica dodatków
ord - kolejność na stronie
default_value - domyśla wartość
required - czy wymagane
deleted - usunięte czy nie
tabela data
user, form_id, id, value
id - id pola z tabeli forms
value - dane
Każdy form przechowywany jest jako szablon w tabeli forms. Każdy użytkownik który go wypełni generuje odpowiednią ilość wierszy do tabeli data.
Przy pokazywaniu nowego forma pobiera się szablon bez usuniętych pól, a przy wyświetlaniu starego razem z usuniętymi - np. bez możliwości edycji albo innym kolorem itp.
pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.