그림 show
페이지에 표시 할 설명의 부분이 _index
입니다. 내 미디어보기에서 부분을 렌더링하고부분 변수에 변수를 전달할 수 없습니다.
현재이 좋아 :
내 의견 컨트롤러는 다음과 같습니다<div id="comments">
<%= render partial: 'comments/index' %>
</div>
:
def index
@comments = Comment.all
render partial: 'comments/index', locals: { :comments => @comments }
end
그리고 내가 사용하는 커피 스크립트 코드는 모양 다시로드 이 :
setInterval (=> $('#comments').load('/comments')), 1000
내보기에서 다음을 시도하면 : comments 변수 th 내가 그 부분에 보내면, 나는 그것을 할 수 없다. 값이 없습니다.
어떻게 부분 값을 올바르게 가져올 수 있습니까?
주목할만한 점은 인스턴스 변수 @comments
또한 내 부분에서 액세스 할 수 없다는 점입니다.
당신이 영리 아무것도하지 않기 때문에 '@ comments' 객체를 사용하면 왜 부분적으로'Comment.all'을 대신 사용하지 않을까요? 당신은 실제로 @@ comments 객체에 접근 할 수 있어야한다. 그래서 뭔가 잘못되어 있어야한다. – Matt
기본적으로 내 @comments는 nil이라고합니다. 현재 내 견해로는 Model의 모든 의견을 수렴하고 있지만보기가 아닌 내 컨트롤러에 맡기고 싶습니다. 도움이되면 index partial은 media_controller라는 다른 컨트롤러에 속한 다른보기로 렌더링됩니다. 어쩌면 그게 문제의 원인일까요? – Kaspar
아, 사실, 첫 번째 페이지로드시 @comments에 값이 없지만 내 coffescript로 다시로드 할 때 수행됩니다. 그러나 여전히 이것은 문제입니다. 나는 같은 부분을 렌더링하고 있으며, 처음 렌더링 할 때 전달한 정보가 없습니다. – Kaspar