コメント削除押したら
ActiveRecord::RecordNotFound in TweetsController#destroy
Couldn't find Tweet with 'id'=26
エラーが出ます。
tweets.controller.rb
の
def destroy
tweet = Tweet.find(params[:id])
tweet.destroy
end
のアクションを読み出そうとしてActiveRecord::RecordNotFound が出ているようです
どこの記載を直せばいいでしょうか?
ファイル名<routes.rb> resources :tweets do resources :comments, only: [:create, :destroy] end
ファイル名<show.html.haml> .comments %h4 <コメント一覧> - if @comments - @comments.each do |comment| %p %strong = link_to comment.user.nickname, "/users/#{comment.user_id}" : = comment.text - if user_signed_in? && current_user.id == comment.user_id = link_to "削除","/tweets/#{comment.id}", method: :delete, class: "image-delete"
ファイル名<comments.controller.rb> def destroy comment = Comment.find(params[:id]) comment.destroy end
ファイル名<comments.controller.rb>全ての記載 def create @comment = Comment.create(text: comment_params[:text], tweet_id: comment_params[:tweet_id], user_id: current_user.id) respond_to do |format| format.html { redirect_to tweet_path(params[:tweet_id]) } format.json end end def destroy comment = Comment.find(params[:id]) comment.destroy end private def comment_params params.require(:comment).permit(:text).merge(user_id: current_user.id, tweet_id: params[:tweet_id]) end
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。