2
인덱스 페이지의 컨트롤러에 정의 된 메서드를 사용하는 방법을 배우고 싶습니다. 블로그에 '좋아요'버튼을 구현하려고합니다. 모든 게시물이 나열되는 인덱스에서레일 : 인덱스 파일에서 PostController 메서드를 사용하는 올바른 방법
def like
@post = Post.find(params[:id])
@post.like += 1
@post.save
end
PostController, 나는 이런 식으로 뭔가를 시도했다.
<% @posts.each do |post| %>
<tr>
<td><%= post.name %></td>
<td><%= post.created_at.strftime("%Y/%m/%d, %I:%M%p") %></td>
<td><%= post.view %></td>
<td><%= link_to 'like', like_post_path %></td>
<td>hate</td>
</tr>
<% end %>
내가 코드를보고 생각이있어,
<%= link_to 'make a new post', new_post_path %>
<%= link_to 'Edit', edit_post_path(post) %>
이 나는 인덱스 페이지의 컨트롤러 방법을 사용하는 방법
(PostController의 방법) _post_path했다 생각 하지만 내가 틀린 것 같아.
undefined local variable or method `like_post_path'
는 또한 (게시물)처럼 시도했습니다.
내 궁극적 인 목표는 아약스 기능으로이 기능을 확인하는 것입니다, 그래서 나는이 경우 "와 같은"방법을 사용하는 올바른 방법은 무엇
<% link_to_function 'like', like_post, remote: true %>
같은 형태가 될 것으로 예상?
효과가있었습니다. 고맙습니다. "회원"부분에 대해 더 설명해 주시겠습니까? 또한, "edit"와 "new"메소드가 이렇게 라우팅되었지만 config/routes.rb 파일에 표시되지 않은 방법을 알려주시겠습니까? –
'resources'는'edit'와'new'를위한 매크로와 다른 REST 메소드입니다. 'resources' 블록 안에는 id에 의해 개별 레코드를 가리키는 라우트를 만드는 "멤버"라우트와 그렇지 않은 "콜렉션"라우트를 정의 할 수 있습니다. 자세한 설명은 [here] (http://guides.rubyonrails.org/routing.html)에서 찾을 수 있습니다. – numbers1311407