#実現したいこと
画像投稿一覧ページにコメント機能を実装中です。
コメントが投稿されたら、下記の画像のように仕上げたいです。
#起きている問題
新しいコメントの投稿画面は出来上がりましたが、rooting errorが解決できず困っています。
また、コメントを書いて投稿ボタンを押しても、「失敗しました」の連続でうまくいきません。
#該当のソースコード
config/routes.rb
Rails.application.routes.draw do get 'topics/new' get 'sessions/new' get 'comments/new' get 'users/new' root 'pages#index' get 'pages/help' root to: "home#index" get '/login', to: 'sessions#new' post '/login', to: 'sessions#create' delete '/logout', to: 'sessions#destroy' resources :users resources :topics do resources :comments end get 'favorites/index' post '/favorites', to: 'favorites#create' delete '/favorites', to: 'favorites#destroy' end
app/views/comments/new.html.erb
<div class="topoic-new-wrapper"> <div class="container"> <div class="row"> <div class="col-md-6 col-md-offset-3"> <h1 class="text-center">Add Comment</h1> <%= form_with url: '/topics/' + @topic_id.to_s + '/comments', local: true do |f| %> <div class="form-group"> <%= f.label :message %> <%= f.text_area :message, class: 'form-control' %> <%= f.hidden_field :topic_id, :value => params[:topic_id] %> </div> <% if logged_in? %> <%= f.submit 'コメント送信', class: 'btn btn-black btn-block' %> <% end %> <% end %> </div> </div> </div> </div>
app/views/topics/index.html.erb
<%=link_to new_topic_comment_path(topic_id: topic.id), method: :get do %> <%= image_tag 'icons/comment.png', class: 'topic-index-icon' %> <% end %>
おそらく
<%= form_with url: '/topics' + @topic_id.to_s + '/comments', local: true do |f| %> or resources :topics do resources :comments end
のどれが間違っているのか判断できない状況です。
#試してみたこと
resources :topics do resources :comments end ↓ get 'comments/index' post '/comments', to: 'comments#create' または <%= form_with url: '/topics/' + @topic_id.to_s + '/comments', local: true do |f| %> ↓ <%= form_with url: @topic_id.to_s + '/comments', local: true do |f| %>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。