Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Rozbijać rejestracje jako oddzielny kontroler?
Forum PHP.pl > Forum > PHP > Object-oriented programming
g2g3
No właśnie, tak jak w temacie, jakie macie praktyki, wrzucanie logowanie i rejestrację do kontrolera użytkownika czy wszystko oddzielnie?
Fifi209
Oddzielnie. Pełnią inną rolę według mnie.
Szymciosek
AuthController -> validate, login
RegisterController -> validate, register

Coś w tym stylu bym chyba robił na podstawę, ale oczywiście reszta zależy od Twoich wymagań. Aha no i validate, to metoda osobnej klasy.
markonix
Miałem okazję pracować z kilkoma klasami w FW CodeIgniter do autoryzacji (ponieważ nie ma on tego wbudowanego) i wszystkie pakowały to w jeden kontroler ("auth"). Myślę, że przy prostych aplikacjach to szybkie rozwiązanie - wgrywasz pliki (kontrolery, configi, modele i widoki) i masz już rejestrację, logowanie i wszystkie poboczne usługi. Jednak w dużych aplikacjach rejestracja jest dosyć solidnym kawałkiem kodu - wtedy ja bym nadal brnął w jeden kontroler po prostu modyfikując rejestracje ale nie ukrywam, że mnie kusi z tego stworzyć osobny kontroler.
Pilsener
Problem moim zdaniem niewielki. Zależy, ile logiki masz w kontrolerze - jak skomplikowany framework MVC to niewiele, jak prosty MVP (gdzie logika widoku idzie do kontrolera a sam widok to po prostu templat) to może być sporo kodu tam.

Ja bym wolał mieć wszystkie operacje dotyczące usera w jednym kontrolerze bo w ostateczności i tak wszystkim zajmą się inne klasy (walidacja, formularze, obsługa bazy, sesja) a nawet i jakąś bardziej skomplikowaną logikę można wydzielić do jakiegoś liba - ja bym szedł bardziej w tym kierunku niż dzielenie kontrolera na czworo, bo w końcu to kontroler ma "pociągać za sznurki".

No i miałbym problem jak to dzielić, bo przecież user to nie tylko rejestracja i logowanie, jak już bym dzielił to pewnie wszystko na osobne kontrolery a potem znów miałbym problem, że w jakimś kontrolerze jest 5 linijek kodu smile.gif

Zazdroszczę jeśli tylko takie problemy smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.