これらのリソースは routes.rb にあります。トピックの下のコメント。
namespace :discuss do
resources :topics, :as => :topic do
resources :comments, :as => :comment
end
end
そして _form.html.erb を持っています
<%= form_for(@topic) do |f| %>
<div class="field">
<%= f.label :title %>
<%= f.text_field :title %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
このフォームをレンダリングするときにエラー undefined method `topics_path' for...行<%= form_for(@topic) do |f| が発生しました。%>
レーキルート
discuss_topic_comment_index GET /discuss/topics/:topic_id/comments(.:format) discuss/comments#index
POST /discuss/topics/:topic_id/comments(.:format) discuss/comments#create
new_discuss_topic_comment GET /discuss/topics/:topic_id/comments/new(.:format) discuss/comments#new
edit_discuss_topic_comment GET /discuss/topics/:topic_id/comments/:id/edit(.:format) discuss/comments#edit
discuss_topic_comment GET /discuss/topics/:topic_id/comments/:id(.:format) discuss/comments#show
PUT /discuss/topics/:topic_id/comments/:id(.:format) discuss/comments#update
DELETE /discuss/topics/:topic_id/comments/:id(.:format) discuss/comments#destroy
discuss_topic_index GET /discuss/topics(.:format) discuss/topics#index
POST /discuss/topics(.:format) discuss/topics#create
new_discuss_topic GET /discuss/topics/new(.:format) discuss/topics#new
edit_discuss_topic GET /discuss/topics/:id/edit(.:format) discuss/topics#edit
discuss_topic GET /discuss/topics/:id(.:format) discuss/topics#show
PUT /discuss/topics/:id(.:format) discuss/topics#update
DELETE /discuss/topics/:id(.:format) discuss/topics#destroy
discuss /discuss(.:format)
私のコントローラーアプリ/controllers/discuss/topics_controller.rb
module Discuss
class TopicsController < ApplicationController
def new
@topic = Topic.new
respond_to do |format|
format.html # new.html.erb
format.json { render json: @topic }
end
end
... some other actions ...
end
end
このフォームで何が間違っていますか?