가입하는 동안 선택한 스포츠에 따라 사용자를 다른 카테고리로 구분하는 페이지를 만들려고합니다. 나는 현재 두 개의 다른 부분으로 그것을하려고 노력 중이다. 내가 겪고있는 문제는 동일한 모델을 두 개의 개별 부분으로 사용할 수 없다는 것입니다. 어떻게하면 좋을까요?여러 부분을 동일한 모델로 사용하는 방법
답변
흠. 부분은 여러 개의 작은 파일에서 html.erb 코드를 분할하고 다양한보기 사이에서 html.erb 코드를 재사용하는 방법 일뿐입니다.
분리보기를 하나의보기로 만들고 레일을 처음 사용하는 경우 두 가지 범주 (아마도 두 범주 만 가능)가 될 때까지 부분 분석없이 시도 할 것입니다.
그런 다음 반복 코드를 부분 코드로 분해하여 다시 사용할 수 있습니다. 물론 모든 모델을 사용할 수 있습니다. 어쩌면 매개 변수를 부분으로 전달할 가능성을 알지 못했을 것입니다. 마찬가지로, @feed_item는 변수 제어기 (또는 다른 변수)
<%= render 'shared/feed_item_raw', feed_item: @feed_item %>
의해 설정된 경우 그 부분은 단순히 feed_item
먼저 Michael Hartl 's rails 튜토리얼에서 샘플 앱을 수정하려고합니다. 문제는 두 부분으로 동일한 모델 정보를 사용할 수 없다는 것입니다. "정의되지 않은 지역 변수 또는 메소드'user '"오류가 발생합니다. 부분적으로 또는 부분적으로보기가 모델을 상속받지 않는 – rockyroadster555
에 있던 폴더의 모델을 부분적으로 자동으로 상속 받았다고 생각했습니다. 뷰에서 모든 컨트롤러 인스턴스 변수를 사용할 수 있습니다. 부분에 대해서는 위의 대답에서 언급 한 변수를 전달할 수 있습니다. 모델에 대한 액세스가 필요한 경우 수행해야 할 작업입니다. – bento
사용이 그것을 참조로 :
render :partial => 'partial_path', :locals => {:user => your_user_object}
을 나는 하나의 모델, 클라이언트, 다른 상태가 있습니다. 나는 같은 페이지들은 뷰의 각각의 부분으로 이동
<%= render(partial: "active_clients", collection:@active_clients) || "No active clients yet." %>
<%= render(partial: "inactive_clients", collection:@unactive_clients) || "No inactive clients yet." %>
의 다른 부분을 렌더링 할 필요가 있었다.
다음 내보기/클라이언트 폴더에서 각 부분이 약간 다르기 때문에 두 개의 다른 부분을 만들었습니다. 그 부분 지문의
_active_clients.html.erb
_inactive_clients.html.erb
일이 내부 같습니다
<li>
<input class="checkbox" checked="checked" type="checkbox"/>
<%= link_to "#{active_clients.firstname} #{active_clients.lastname}", dashboard_path %>
</li>
이없는 부분 다른 체크 박스에 "확인"를. 그것은 유일한 차이점입니다.
내 clients_controller 인덱스 작업에I는 다음과 같이 두 개의 배열을 구분했습니다
def index
@active_clients = current_trainer.active_clients
@inactive_clients = current_trainer.inactive_clients
end
마지막 조각 트레이너 모델 안에 ...이에 대한 매력처럼 작동
def active_clients
self.clients.where(status: true)
end
def inactive_clients
self.clients.where(status: false)
end
나를. 나는 그것이 도움이 되길 바랍니다. ...
- 1. 다형성 모델로 RABL 부분을 렌더링하십시오.
- 2. UNC 경로에서 부분을 사용하는 방법?
- 3. 동일한 컴퓨터에서 여러 버전의 레일을 사용하는 방법
- 4. belongs_to 여러 모델로
- 5. 여러 모델로 업데이트
- 6. 동일한 HTML 파일 내에서 여러 페이지에 동일한 헤더를 사용하는 방법
- 7. EMF를 자체 메타 모델로 사용하는 방법
- 8. 레일즈에서 2 가지 모델로 Devise를 사용하는 방법?
- 9. Django Admin : 동일한 모델로 여러 개의 인라인을 자동으로 생성합니다.
- 10. 동일한 서비스를 사용하는 여러 타이머
- 11. 레일스 - 여러 모델로 된 acts_as_list
- 12. activerecord를 모델로 사용하는 것이 좋습니다.
- 13. 하나의 제출으로 여러 행을 모델로 변경
- 14. 두 개의 연관이 동일한 모델로 속합니다
- 15. Google App Engine을 동일한 모델로 가져오고 게시하십시오.
- 16. 여러 클래스 기반 뷰에서 동일한 컨텍스트 변수를 사용하는 방법
- 17. 동일한 도메인을 사용하는 여러 서버에서 두 개의 앱을 제공하는 방법
- 18. jdbc postgresql 준비 문에서 동일한 값을 여러 번 사용하는 방법
- 19. 알레그로에서 여러 타이머를 사용하는 방법?
- 20. 여러 활동에서 동일한 서비스를 사용하는 방법은 무엇입니까?
- 21. 동일한 인터페이스를 사용하는 C# 여러 설정 파일
- 22. 동일한 정적 메서드를 사용하는 여러 Stateless Bean
- 23. 동일한 파일을 사용하는 여러 개의 WordPress 사이트?
- 24. 동일한 UIActionSheetDelegate 메서드를 사용하는 여러 버튼
- 25. Android 동일한 코드베이스를 사용하는 여러 프로젝트
- 26. 다른 구성을 사용하는 여러 사이트의 동일한 프로젝트
- 27. 동일한 이메일을 사용하는 여러 계정을 지원합니까?
- 28. 동일한 데이터베이스 구조를 사용하는 여러 웹 사이트
- 29. Tomcat - 동일한 외부 디렉토리를 사용하는 여러 인스턴스
- 30. 동일한 UDP 포트를 사용하는 여러 프로그램? 가능한?
우리가 당신에게 당신이 잘못하고있는 것을 말할 수있는 당신의 코드를 보여 주면. – Mischa