2010-05-18 7 views
0

레일에서는 모델이있는 컨트롤러에서 로직을 정의해도 괜찮습니까? 예를 들어 사용자 모델이 있습니다. 이는 좋은 디자인입니다.레일 컨트롤러

1) CRUD 모델로 UserModel을 떠나 같은 UserModels에

감사합니다 :)

답변

2

나는 (비즈니스 로그인을 대표하는) 사업과 같은 다른 이름 공간에 별도의 사용자 모델을 만드는 방법을

에 따라 선호하고 그것은 모든 비즈니스 로직을하고에서 파생되는 별도의 사용자 모델이 될 것입니다 액티브

클래스 비즈니스 :: 사용자가

#inside이 모든 사용자의 비즈니스 로직이가는 것

,#you은 사용자가 필요할 수 있습니다

(ORM) 모델 찾기 작업을 같이 필요한 경우

및 데이터베이스 작업

을위한 :: 사용자 및 사용자와 통신이 클래스 (ORM) 클래스 비즈니스와 통신 할 내 컨트롤러

클래스 사용자 < 액티브 :: 자료

이 방법으로 당신은 당신의 사업 로그인 및 ORM을 분리 할 수 ​​있습니다. 어떤 방법 으로든 모델을 더 많이 처리하면서 컨트롤러를 얇게 유지해야합니다.

건배 sameera

3

을 특정 작업을 사용자 추가 다른 모든 사용자 별 별도의 컨트롤러 행동이나
2) 이동 지방 모델, 얇은 컨트롤러. 모델 속성 또는 모델 속성과 몇 가지 인수에 완전히 기반하여 수행되는 작업이라면 모델에 포함됩니다. 좀 더 복잡하다면, 아마도 ActiveRecord :: Base에서 파생 된 모델이 아닌, 여전히 Model에 들어갈 것입니다.