Rails 4如何从不同的模型编辑对象?

时间:2015-10-27 22:39:57

标签: ruby-on-rails-4 routing link-to

如何从模型B视图编辑模型A中的对象?模型是相关的。我试过对object_id进行硬编码(link_to'编辑' edit_a_path(2)),当然它也可以。但我怎么能动态地做到这一点?

1 个答案:

答案 0 :(得分:1)

如果模型A为User且模型b为Post且用户为has_many,则您可以访问用户帖子,如下所示:

# In controller
@user = User.find(params[:id])

# In view

# if user has_many posts
<% @user.posts.each do |post| %>
  <%= link_to 'Edit', edit_post_path(post) %>
<% end %>

# if user has_one post
<%= link_to 'Edit', edit_post_path(@user.post) %>

这可能不会反映您的模型,但如果没有,请注释。

您应该查看the rails association guide或更深入地了解rails tutorial by Michael Hartl。真棒。