前提・実現したいこと
イイねボタンを実装していますが、うまくいきません。助けてください、お願いします。
当方、始めたばかりの初心者です。
発生している問題・エラーメッセージ
https://gyazo.com/29fbf3d429b44bc3312ce790a62f02d8
イイねボタンを付けたいのですがなぜかこうなります。
エラーメッセージ
該当のソースコード
部分テンプレート<_like.html.erb>
<div class="like_button_on"> <%= link_to "いいね済み", tweet_path(like), { method: "post", remote: true } %> <%= @like_count %> </div> <div class="like_button"> <%= link_to "いいね", tweet_path(like), { method: "delete", remote: true } %> <%= @like_count %> </div>部分テンプレーと<_tweet.html.erb>
<div class="content_post" style="background-image: url(<%= tweet.image %>);"> <div class="more"> <span><%= image_tag 'arrow_top.png' %></span> <ul class="more_list"> <li> <%= link_to '詳細', "/tweets/#{tweet.id}", method: :get %> </li> <% if user_signed_in? && current_user.id == tweet.user_id %> <li> <%= link_to '編集', "/tweets/#{tweet.id}/edit", method: :get %> </li> <li> <%= link_to '削除', "/tweets/#{tweet.id}", method: :delete %> </li> <% end %> </ul> </div> <%= simple_format(tweet.text) %> <span class="name"> <a href="/users/<%= tweet.user.id %>"> <span>投稿者</span><%= tweet.user.nickname %> <%= render partial: 'likes/like', collection: @tweets %> </a> </span> </div><like_controller.rb>
class LikesController < ApplicationController
before_action :logged_in_user
def create
@tweet = Tweet.find(params[:tweet_id])
@tweet.like(current_user)
end
def destroy
@tweet = Like.find(params[:id]).tweet
@tweet.unlike(current_user)
end
end
<routes.rb>
Rails.application.routes.draw do
devise_for :users
root to: 'tweets#index'
namespace :tweets do
resources :searches, only: :index
end
resources :tweets do
resources :comments, only: :create
end
resources :users, only: :show do
end
resources :likes, only: [:create, :destroy]
end
ソースコード
試したこと
pictweetにイイねボタンを実装しようと思いやってます。そうです、テックキャンプです。個人開発のとこですが全く分かりません。どなたかよろしくお願いします。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
あなたの回答
tips
プレビュー