1

I have rails app with devise invitable. If I invite a user who hasn't registered yet then it's working fine. If I type something like 'fsafsdda' then it tells me to use valid form. BUT when I leave the field empty or invite an already existing user then it raises the following error for the <%= f.input field %> line in the devise/invitations/new.html.erb

undefined method `input' for <ActionView::Helpers::FormBuilder:0x007fd644108d68>

What did I miss?

html.erb

<div class="invite">  
  <%= simple_form_for(User.new, url: user_invitation_path) do |f| %>
    <div class="form-group">
      <div class="input-group input-group">
        <%= f.input :email, placeholder: 'Invite via email', label: false, class: 'form-control' %>
        <span class="input-group-btn">
          <%= content_tag :button, type: :submit, class: 'btn btn-success' do %>
            <span class="glyphicon glyphicon-envelope"></span>
          <%end%>
        </span>
      </div>
    </div>
  <% end %> 
</div>

default devise/invitations/new.html.erb

<h2><%= t "devise.invitations.new.header" %></h2>

    <%= form_for resource, as: resource_name, url: invitation_path(resource_name), html: { method: :post} do |f| %>
      <%= devise_error_messages! %>

      <div class="field form-group">
      <% resource.class.invite_key_fields.each do |field| -%>
        <%= f.input field %> ##ERROR THROWN HERE
      <% end -%>
      </div>

      <div class="actions">
        <%= f.button :submit, t("devise.invitations.new.submit_button"), class: "btn btn-primary" %>
      </div>
    <% end %>
Sean Magyar
  • 2,230
  • 15
  • 43

0 Answers0