Hmmm, zastanawiam się jak we frameworkach jest rozwiązywana sprawa widoków o tych samych danych, ale różnej prezentacji (HTML, XML, JSON)?
Wymyśliłem 2 rzeczy.
1. Akcja zajmuje się przypisaniem danych z modelu do widoku. W zależności od żądania, TRANSPARENTNIE podmieniany jest widok - załóżmy, że pliki z widokami (szablonami) mają jakieś ustandaryzowane nazewnictwo to ułatwiające, albo są przypisane w configu.
2. Tworzy się aliasy akcji i w zależności od typu żądania wywoływany jest odpowiedni alias w którym przebiega cały proces wysyłania/[przypisywania do widoku] danych.
Szczerze mówiąc podoba mi się sposób pierwszy. Tylko, czy to będzie odpowiednie z filozofią MVC jeżeli to w widoku zajmę się enkodowaniem danych do JSON'a - dla mnie to już ten rodzaj logiki, który powinien być przeprowadzany w kontrolerze/akcji. Może patrzę się na widok zbyt płasko? W RoR i pochodnych jako widok użyty jest wzorzec Template View (a nawet Two Step View). Wydaje mi się, że w przypadku pewnych danych można z powodzeniem zastąpić go Transform View. Tylko znów - nie wiem czy można tych wzorców używać przemiennie.
Generalnie, chciałbym, żeby działało to niewidocznie dla kontrolera (czyli jeszcze raz skłaniam się tu do opcji 1).
Może Wy macie jakieś pomysły jeszcze? Zapraszam do dyskusji.
edit:
Naprawdę myślałem, że temat zainteresuje niektórych forumowiczów. Zastanawiam sie, czy na prawdę nikt nie ma nic do powiedzenia. Jest tyle publicznych frameworków, jak i tych rozwijanych w zaciszach swoich domów.
Może po prawie pół roku, ktoś będzie wypowie kilka zdań na ten temat?