Devise sign up form on the home page as well

后端 未结 2 1152
一整个雨季
一整个雨季 2021-01-30 05:28

I want the ability to display the sign_up form on the homepage of my app home#index as well as the default page Devise creates.

Devise has the instruction

相关标签:
2条回答
  • 2021-01-30 06:07

    Here is the explanation from Devise How To: Display a custom sign_in form anywhere in your app

    Another example with form_for and posting to user_session_path:

    <%= form_for(:user, :url => session_path(:user)) do |f| %>
      <%= f.text_field :email %>
      <%= f.password_field :password %>
      <%= f.check_box :remember_me %>
      <%= f.label :remember_me %>
      <%= f.submit 'Sign in' %>
      <%= link_to "Forgot your password?", new_password_path(:user) %>
    <% end %>
    

    I placed it in my new view

    0 讨论(0)
  • 2021-01-30 06:14

    Paste this in your home#index view code

    <h2>Sign up</h2>
    
    <%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
      <%= devise_error_messages! %>
    
      <div><%= f.label :email %><br />
      <%= f.email_field :email %></div>
    
      <div><%= f.label :password %><br />
      <%= f.password_field :password %></div>
    
      <div><%= f.label :password_confirmation %><br />
      <%= f.password_field :password_confirmation %></div>
    
      <div><%= f.submit "Sign up" %></div>
    <% end %>
    
    <%= render "links" %>
    

    and

     def resource_name
        :user
      end
    
      def resource_class 
         User 
      end
    
      def resource
        @resource ||= User.new
      end
    
      def devise_mapping
        @devise_mapping ||= Devise.mappings[:user]
      end
    

    in your Application Helper file.
    You are good to go.

    0 讨论(0)
提交回复
热议问题