试图添加一个带有祖先gem的嵌套帖子

时间:2016-04-17 23:00:31

标签: ruby-on-rails ruby

我有主题和帖子,他们都有关系。我一直在关注如何添加嵌套帖子的指南,但当我尝试回复帖子时,我得到Couldn't find Topic with 'id'=

在我的Posts控制器

def create
 @topic = Topic.find params[:topic_id]
 @post  = Post.new(post_params)
 @post.user_id = current_user.id
 @post.topic_id = @topic.id
 if @post.save
  redirect_to @topic
 else
  render :new
 end
end

在我的Topics控制器

def show
 @topic = Topic.find params[:id]
 @post = Post.new(:parent_id => params[:parent_id])
 @posts = @topic.posts
 @topic.punch(request)
end

我会在我的主题/ show.html.erb页面中为我的回复按钮做些简短

<% @posts.each do |post| %>
 <%= link_to "Reply", new_topic_post_path(@topic, :parent_id => post) %>
<% end %>

现在这是我的表格

<%= simple_form_for [@topic, @post] do |f| %>
 <%= f.hidden_field :parent_id %>
 <%= f.input :content, as: :pagedown, input_html: { preview: true, rows: 10 }, label: 'Markdown' %>
 <%= f.submit "Post", class: 'button expanded' %>
<% end %>

1 个答案:

答案 0 :(得分:0)

@Kristján回答了我的问题。我错过了params[:topic_id]