2012-10-22 3 views
0

내 애플 리케이션에 다음과 같은 기능을 넣으려는 Michael Hartl의 책을 읽고 있으며, follow 및 unfollow 버튼에 AJAX를 사용하려고하면 다음과 같은 버튼을 변경하려고 할 때 이러한 오류가 발생합니다. 렌더링 : 이것은 내 양식이다부분을 찾을 수 없습니다 레일

def follow_user 
    @other_user = User.get(params[:user_id].to_i) 
    current_user.follow(@other_user) 

    respond_to do |format| 
     format.html {redirect_to user_profile_path(@other_user)} 
     format.js 
    end 
    end 

... 잘 형성하지하지만 기능은 수행 할 수있는 링크 :

Completed 500 Internal Server Error in 81ms 

ActionView::MissingTemplate (Missing template users/follow_user, application/follow_user with {:locale=>[:en], :formats=>[:js, :html], :handlers=>[:erb, :builder, :coffee]}. Searched in: 
    * "/Users/hugo/Web Development/Rails/sample/app/views" 
    * "/Users/hugo/.rvm/gems/ruby-1.9.2-p318/gems/kaminari-0.13.0/app/views" 
    * "/Users/hugo/.rvm/gems/ruby-1.9.2-p318/gems/devise-2.0.4/app/views" 
): 
    app/controllers/users_controller.rb:73:in `follow_user' 
    lib/ct_gems/dm-core-1.2.0/lib/dm-core.rb:263:in `block in repository' 
    lib/ct_gems/dm-core-1.2.0/lib/dm-core/repository.rb:114:in `scope' 
    lib/ct_gems/dm-core-1.2.0/lib/dm-core.rb:263:in `repository' 


    Rendered /Users/hugo/.rvm/gems/ruby-1.9.2-p318/gems/actionpack-3.2.3/lib/action_dispatch/middleware/templates/rescues/missing_template.erb within rescues/layout (0.5ms) 

이 내 컨트롤러의 코드가있다

그리고 이것은 내가 렌더링하기 위해 노력하고있는 부분 지문 중 하나입니다

$("#follow_form").html("<%= escape_javascript(render('users/unfollow')) %>") 
:

<%= link_to "Follow", user_follow_user_path(@user), :class => "btn btn-primary", :style => "margin-bottom:20px;", :remote => true %> 

을 그리고 이것은 오른쪽 버튼을 렌더링 할 수있는 파일입니다,이 코드 내 마이클의 책을 사용하고 있습니다

그러나 위 부분에서 오류가 발생했습니다. 아무도 왜 내게 설명 할 수 있습니까? 감사합니다

답변

0

내 부분에 문제가있는 부분은 자바 스크립트 파일의 이름입니다. 컨트롤러 액션의 이름과 일치해야합니다.

1

내 경험에 의하면 이름 앞의 밑줄이없는보기/폴더에있는 파일이 템플릿을 렌더링하려한다는 것입니다. 파일 이름의 시작 부분에 밑줄을 추가하고 partial :> 'users/follow'를 렌더링하고 도움이되는지 확인하십시오.

관련 문제