2011-10-13 8 views
1

Search라는 컨트롤러를 생성했습니다. 나중에 검색이라는 모델도 만들었습니다. 검색을 시도 할 때 검색이라는 컨트롤러가 없다는 오류가 표시되므로 모델이 기본적으로 복수형과 상호 작용하는 것처럼 보입니다. 어떻게하면이 동작을 바꿀 수 있습니까?레일 모델 및 컨트롤러

답변

4

여러분은 아주 새로운 레일처럼 들립니다. 가장 좋은 조언은 거의 확실합니다. "하지 마세요."Rails는 모든 것을 구성해야하는 것을 피하기 위해 많은 규칙을 사용하며, 이것 역시 그 중 하나입니다. 그래서 차라리 레일 자세한 내용에 대한 this stackoverflow question

+0

우수한 조언. 컨벤션에 대한 협약. – Fred

1

그냥 'SearchesController'에서 'SearchController'에서 컨트롤러 클래스의 이름을 바꾸 볼 수있는 평범한

에서 뭔가를 만들려고 노력보다 컨트롤러의 이름을 변경하는 것이 좋습니다. apps/controllers의 파일 이름을 search_controller.rb에서 searches_controller.rb로 바꿉니다.

0

컨트롤러와 모델을 별도로 생성하면 테스트 파일, 뷰 등과 같은 추가 파일도 생성됩니다. 그래서 잠재적으로 당신은 이것에 대해 큰 두통을 겪을 것입니다.

내가 다음 단계에 rails destroy 명령을 사용하는 것이 좋습니다 :

를 현재 프로젝트를 커밋

실행이 명령 (나중에는 그것에서 콘텐츠 복구 할 수 있습니다) : 복원

rails destroy model Search 
rails destroy controller Search 

당신의 컨트롤러 및 모델을 이전 커밋에서 삭제합니다.