Ilaro.Admin – plan
Co jeszcze w v1?
Większość pracy w pierwszej wersji projektu została już zrobiona.
Minimum które sobie założyłem do zrobienia w tej wersji:
- Obsłużenie różnych opcji usuwania kaskadowego dla podrzędnych rekordów.
- Masowa rejestracja encji.
Np. wszystkie klasy w danym namespace, wszystkie klasy w danym assembly, wszystkie klasy dziedziczące po określonym typie - Nowa możliwość konfigurowania encji. Konfiguracja dla każdej encji w osobnej klasie, na wzór konfiguracji NHibernate. Będzie to świetnie współgrało z masową rejestracją.
- Obsłużenie relacji wiele do wielu.
- Refaktoring.
- Lepsze tworzenie sql pokazujące hierarchie powiązań danego rekordu.
- Klasa inicjalizująca jest statyczna, przydałoby się to zmienić.
- Testy, testy, więcej testów – teraz jest ich dosyć mało.
Co w v2?
W kolejnej wersji oprócz dalszych udoskonaleń, zmienię sposób generowania stron administracyjnych.
Obecne podejście nie pozwala na obsłużenie bardziej skomplikowanych przypadków. Każda encja ma jeden zestaw stron administracyjnych (klasyczny CRUD), a uwierzytelnianie jest ustawiane dla całego panelu, co nie pozwala na przypisanie różnym grupom użytkowników możliwość edycji tylko określonych encji/pól lub też pozwolenie tylko na przeglądanie rekordów.
W zmienionym podejściu zamiast dodawać encje i dla nich generować CRUD, będzie się definiowało się strony do których będzie przypisywało encje i określało uwierzytelnianie.
Przykład użycia
Organizujemy konkurs i potrzebujemy prostego formularza zgłoszeniowego.
W Ilaro.Admin definiujemy stronę dla encji, która przechowuje zgłoszenia, z możliwością dodawania nowych rekordów przez niezalogowany użytkowników i wyświetlanie wszystkich zatwierdzonych rekordów.
Definiujemy drugą stronę dla tej samej encji z dostępem do całego CRUD’a ale tylko dla użytkowników z rolą administratora.
W ten sposób można „wyciągnąć” panel administracyjny do zwykłego użytkownika i mamy gotowe prosty formularz zgłoszeniowy z możliwościami administracyjnymi.
Dodaj komentarz