2013-01-02 2 views
1

내가 3 액션을 가지는 sessions_controller 있습니다세 개의 개별 컨트롤러로 세션 컨트롤러를 분리합니까?

new 
create 
destroy 

을하지만 난 각 작업에 대해 별도의 컨트롤러를 만든 경우는 각 컨트롤러는 하나의 일을 함께, 분명있을 것이라고 생각하고 (세션 # 새로운 덜 분명하다 나보다 로그인 # 새) :

signup 
login 
logout 

기능 수준이 아닌 파일 수준에서 작업을 본질적으로 분리합니다.

다른 이유가 있습니다.

+0

아직 새 컨트롤러를 코딩 해 보셨습니까? 나는 그들이 큰 코드 중복을 가지고 있다고 의심한다. 나는 큰 코드 오버랩을 처리하기 위해 부모 컨트롤러를 가질 수 있다고 생각하지만, 프로그램을 읽는 사람들에게 혼란을 가져올 것이라고 생각합니다. –

+0

@ TayloredWebSites : 아직 시도하지 않았지만, 많은 논리가 도우미에 남아있을 것이고 하나의 컨트롤러에만 국한되지는 않을 것이라고 생각합니다. – pseudosudo

답변

0

확실히 분리 된 컨트롤러로 분리 할 수 ​​있지만 필자는 필 수적이라고 생각하지 않으며 인생을 훨씬 어렵게 만들 것입니다.

routes.rb을 사용하여 컨트롤러 요청을 일치시켜야하는 것 같습니다. 이렇게하면 세션 로직을 그룹화 한 채로 경로를 조금 더 현명하게 유지할 수 있습니다.

+0

'routes.rb'를 사용합니다. 나는 행동을 다른 이름의 파일로 분리하는 것이 개념적으로 더 쉬울 것이라는 점에서 의미가 있습니다. 그것을 반영하기 위해 질문을 편집했습니다. – pseudosudo

+0

하지만 여전히 세션의 기능이므로 동일한 컨트롤러에 두는 것이 더 합리적입니다. – Nic

관련 문제