要成为成员,用户可以在社区页面上使用按钮创建成员。这是在创建新"成员"的部分上进行的。memberships_controller:
@community = Community.find(params[:community_id])
@community.memberships.create(:user => current_user, :role => 1)
<% form_remote_tag :url => community_memberships_path(@community) do %>
<%= submit_tag 'Join' %>
<% end %>
升级到Rails 3后,这不再工作了
我试过了:
<% form_tag( {:url => community_memberships_path(@community)}, :remote => true) do %>
和this:
<% form_tag :url => {:controller => '/memberships/new', :action => :create,:community_id => @community }, :remote => true do %>
但是没有机会…然后出现这个错误
没有路由匹配"/communities/2
谢谢你的帮助
URL是第一个参数,选项是次要的。
<% form_tag(community_memberships_path(@community), :remote => true) do %>
...
至于你的No route matches
异常,检查你已经正确地将你的路由转换为Rails 3语法。