1
votes

I'm trying to add a new form (for a facebook invite) inside the devise invitable new view: devise/invitations/new.html.erb. I'm struggling to get the routing right. I'm using Rails 4, if it makes a difference.

view (views/devise/invitations/new.html.erb)

<%= form_tag "invite_fb_friends" do %>
  ...
<% end %>

controller (controllers/users/invitations_controller)

def invite_fb_friends
  raise params.to_yaml # debug
end

routes

# this is probably wrong
devise_scope :user do
  post  'users/invitation/invite_fb_friends', :to => 'users/invitation#invite_fb_friends'
end

Routing Error

ActionController::RoutingError (uninitialized constant Users::InvitationController)
1

1 Answers

0
votes

You're very close, but I think it's just pluralization in your route that's the problem.

Note "invitationS" in the controller name.

devise_scope :user do
    post 'users/invitation/invite_fb_friends' => 'users/invitations#invite_fb_friends'
end