Wpis z mikrobloga

Piszę apkę w #django korzystam z Djangowego systemu templateów. Projek na zaliczenie, ale przedmiot nie dotyczy Pythona ani webówki tylko projektowania oprogramowania.

Mój problem: pisanie templateów wymaga znajomości jakie klucze znajdują się w słowniku używanym do renderowania templateu. Chodzi o to, żeby template można było stworzyć zupełnie bez znajomości tego co jest w module view.
Generalnie nie wiem jakie są dobre praktyki przy używaniu templatów.

Proponowane mi rozwiązanie to stworzenie DTO - Data Transfer Object. Ma to zagwaratnować taką umowę między osobą piszącą template, a osobą piszącą view - robiąc template użyję nazw, które zawiera DTO bo wiem, że Ty użyjesz ich tworząc view.
Pierwsza moja myśl to jako context to renderowania templateu użyć słownika {'dto': DTO()}.

Liczę na jakieś dobre rady, może linki, a w ostateczności na słowa-klucze do googlowania.

#python #programowanie
  • 4
@m_bielawski: Wiem, że to nie Java, a to rozwiązanie proponował mi rowadzący, który pisze właśnie w Javie i C#, a na Pythonie w ogóle się nie zna… Nie do końca mi się podoba to rozwiązanie, dlatego zapytałem tutaj jak to ładnie w Pythonie zrobić.
Żaden ze sposobów, który mi podałeś nie eliminuje problemu o którym mówiłem, a który prowadzącemu bardzo się nie podoba (że bez znajomości modułu view, albo pomocy
@Romantyczny_widelec: prowadzący jak to prowadzący - jest idiotą bez doświadczenia praktycznego. W django/pythonie się tak nie robi. Niech zobaczy dowolny projekt czy nawet tutorial django.

Dodanie DTO tak naprawdę NIC NIE DAJE. Javowcy lubią się tym brandzlować, bo oni do wszystkiego muszą mieć 7 poziomów abstracji. Co za różnica czy musisz znać widok czy strukturę DTO? I tak z dupy sobie nie wyciągniesz zmiennych dostępnych w szablonie.

Oczywiście skoro musisz pisać