前提・実現したいこと
現在ruby on railsにてアプリケーション内でスレッド機能を実装中ですが,投稿した内容をページに一覧として表示させたいのですができません。
発生している問題・エラーメッセージ
ActionView::SyntaxErrorInTemplate in PostsController#index
該当のソースコード
ruby
1index.html.haml 2.Topic 3 .Topic__Top 4 = link_to new_post_path class: 'Topic__New' do 5 スレッド新規作成 6 .Topic__Body 7 - @posts.each do |post| 8 .Topic__Row 9 = post.title 10 = link_to post_path 11 .Topic__Row 12 = post.content
ruby
1psots_controller.rb 2 3class PostsController < ApplicationController 4 before_action :move_to_index, except: [:index, :show] 5 def index 6 @posts = Post.all 7 end 8 9 def new 10 11 end 12 13 def create 14 Post.create(post_params) 15 end 16 17 def show 18 end 19 20 private 21 22 def post_params 23 params.require(:post).parmit(:content, :title, :image).merge(user_id current_user.id) 24 end 25 26 def set_post 27 @post = Post.find(params[:id]) 28 end 29 30 def move_to_index 31 unless user_signed_in? 32 redirect_to action: :index 33 end 34 end 35 36end 37
試したこと
##コントローラー修正
初めはpostsコントローラーでない別のコントローラーのエラーだったので修正し、上記エラー文になりました。
##その他
インスタンス変数をモデルにかえたりしましたが変わりありませんでした。是非ご教授いただければとおもいます
補足情報(FW/ツールのバージョンなど)
ユーザーを投稿内容に結び付けるためdeviseを導入しています。
また詳細に確認していくと**= link_to post_pathでエラーが起きてしまいますしリンク先のビューも用意しています。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/31 05:14 編集