Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> form generator/builder
marcio
post
Post #1





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Witam chcialem sie zapytac czy zend fw/symfony/kohana lub jakis inny fw posiadaja klase do generowania formularzy z information shcema z mysql?
Nie chodzi mi o "helpery" z gotowymi funkcjami do generowania input'ow itp...tylko cos takiego:
  1. $oform = new FormBuilder($this -> $db -> query('select login,passwd,email from users where id = 1'));

I chcialbym miec juz gotowy formularz do np edycji danych.
Wiem ze cos takiego istnieje ale teraz nie potrafie znalesc...

Ten post edytował marcio 27.10.2010, 18:27:46
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Cytat
To jest kwiesta 2 linijek kodu zeby dodac opcje czy maja automatycznie byc tabelki czy tylko czysty form i pozniej samemu sie ostyluje..
Tyle się tłucze: jeden obiekt jedno zadanie.
Do renderowania formularza w HTMLu użyj osobnego obiektu, który co najwyżej operuje na obiekcie formularza.

Cytat
Po pierwsze chcialem zapytac na jakies zasadzie admin generator generuje dane z usuwaniem,edycja i dodawaniem?
Chodzi Ci o to jak zautomatyzować operacje CRUD dla danych? Dosyć prosto, wystarczy, że modele będą implementować pewien zestaw interfejsów na których opierać się będzie jeden uniwersalny kontroler oraz widok. Co prawda tutaj poruszyłem kwestię MVC, ale to bez większego znaczenia.

Przykładowe interfejsy jakie mogłyby się przydać (wybacz za ewentualne dziwne nazwy):
  1. <?php
  2.  
  3. // Sposób wyświetlania:
  4.  
  5. interface Fetchable {
  6. public function retrieve();
  7. public function retrieveOne($id);
  8. }
  9.  
  10. interface List extends Fetchable { }
  11.  
  12. interface Table extends List {
  13. public function getColumns();
  14. }
  15.  
  16. // "Bajery" przy liście wszystkich rekordów
  17.  
  18. interface Paginable {
  19. public function getOffset();
  20. public function setOffset($offset);
  21. public function getLimit();
  22. public function setLimit($limit);
  23. }
  24.  
  25. interface Sortable {
  26. public function getColumn();
  27. public function setColumn($column);
  28. public function getDirection();
  29. public function setDirection($direction);
  30. }
W zależności od tego jak wygląda sprawa z obsługą formularzy konieczne może okazać się dopisanie kilku interfejsów, które będą pozwalały na uaktualnianie obiektu/rekordu.

Cytat
Cos w tym stylu potem wystarczyloby tylko obsluzyc wcisniecie submit'a i tyle walidacja dzialalaby automatycznie...
Na podstawie typu kolumny w bazie danych możesz co najwyżej sprawdzić czy format danych jest prawidłowy, a to najczęściej za mało. Przypuśćmy, że masz kolumnę publish_at typu DATE. Taki automat spisze się przy sprawdzeniu czy wprowadzone dane mają format YYYY-MM-DD, ale nie sprawdzi już czy data nie jest aby przypadkiem datą przeszłą, albo czy nie jest to rok 2054.

Cytat
Co wy na to?
Określanie reguł walidacji tekstem, zamiast obiektami implementującymi odpowiedni(e) interfejs to proszenie się o wielki ból dupy. (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

Posty w temacie
- marcio   form generator/builder   27.10.2010, 18:27:36
- - destroyerr   W symfony takie formularze są w zasadzie tylko do ...   27.10.2010, 18:48:15
- - Spawnm   Hmm tego typu klasę to raczej sam powinieneś zrobi...   27.10.2010, 18:48:22
- - marcio   CytatHmm tego typu klasę to raczej sam powinieneś ...   27.10.2010, 18:53:30
- - destroyerr   Cytatzadeklarować jaki typ inputa dla jakiej nazwy...   27.10.2010, 18:53:57
- - Spawnm   A mogę prosić o podanie listy w formie 'typ w...   27.10.2010, 19:21:56
- - marcio   Cytat(Spawnm @ 27.10.2010, 20:21:56 )...   27.10.2010, 19:38:09
- - Spawnm   http://spawnframework.com/drivers/sf_form_builder....   27.10.2010, 20:08:15
- - destroyerr   @Spawnm wybacz, ale to nawet szkic nie jest. W tak...   27.10.2010, 20:44:46
- - marcio   Cytat(destroyerr @ 27.10.2010, 21:44...   27.10.2010, 23:15:48
- - phpion   Cytat(marcio @ 27.10.2010, 19:27:36 )...   28.10.2010, 06:56:06
- - skowron-line   Szkoda że Kodshow columns from (..) nie p...   28.10.2010, 09:07:19
- - marcio   http://3paste.com/s/1918 http://marcio.ekmll.com/f...   29.10.2010, 13:47:15
|- - skowron-line   Cytat(marcio @ 29.10.2010, 12:47:15 )...   29.10.2010, 14:00:38
- - marcio   To jest kwiesta 2 linijek kodu zeby dodac opcje cz...   3.11.2010, 23:24:58
- - Crozin   CytatTo jest kwiesta 2 linijek kodu zeby dodac opc...   4.11.2010, 00:29:30
- - marcio   CytatTyle się tłucze: jeden obiekt jedno zadanie. ...   4.11.2010, 00:52:28
- - Crozin   CytatNo wlasnie nie chcialem az tak "kombinow...   4.11.2010, 01:05:04


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 18:55