Jak podejść to tematu stworzenia encji oraz późniejszej ich edycji.

0

System do obsługi księgowości w firmach.

Dane dotyczące firmy przechowywane są w kilku encjach połączonych relacjami.
Jak pojeść do wypełnienia tych danych przez użytkownika?

Mam problem z kontrolerem.
Czy powinienem stworzyć jeden kontroler który będzie odpowiadał za stworzenie wszystkich encji oraz jednocześnie za ich edycję ?
W takiej sytuacji wszystko odbywa się na jednej stronie i przyjmuje dane z formularza metodą POST.
W takim przypadku pojawia się problem ponieważ encje są w relacjach jeden do wielu.

Czy może powinienem stworzyć najpierw opcję rejestracji firmy a dopiero później możliwość ich edycji ?

Największy problem sprawia my sytuacja w której np. do jedna firma może mieć kilka adresów.
Adresy te są przechowywane w encji firma w liście. Jeżeli edycja wszystkich encji dotyczących firmy ma odbywać się na jednej stronie to trudno mi to zorganizować.

Jakie podejście polecacie?
Będę super wdzięczny za wskazówki.

0

Nie widzę zupełnie gdzie tu jest jakis problem, chyba ze robisz tu kilka karygodnych (!) rzeczy.

  1. NIE wysyłaj obiektów encyjnych do Widoku. Stwórz sobie ładne DTO do którego będziesz wiązał dane z Widoku.
  2. Kontroler odpowiada JEDYNIE za wywołanie akcji na odpowiednim serwisie i wybraniu odpowiedniego widoku do wyświetlenia. NIC więcej ma się tam nie znajdować.

Akcja edycji polega na tym, że z Widoku do kontrolera przylatuje obiekt FormularzDTO formularzDTO; z danymi. Kontroler woła sobie magicznySerwis.przetwórzDane(formularzDTO);. Kontroler wyświetla odpowiedni widok (np. stronę z aktualnymi danymi).
Nie rozumiem gdzie powiazanie 1:m cokolwiek tutaj psuje. Moźesz przecież spokojnie wiązać pola formularza do listy.

0

Dzięki @Shalom

"1. NIE wysyłaj obiektów encyjnych do Widoku. Stwórz sobie ładne DTO do którego będziesz wiązał dane z Widoku."

  • Załóżmy, że dane już są w bazie i chce przejść do edycji - w jaki sposób bez wysyłania obiektów encyjnych do widoku mogę edytować dane?
    zależy mi na tym aby użytkownik widział co chce edytować. Czyli wyświetlają mu się aktualne dane z bazy.
0

To przepisujesz te dane z obiektów encyjnych do jakiegoś wygodnego DTO które łatwo ci będzie wyświetlić.

1 użytkowników online, w tym zalogowanych: 0, gości: 1