Я должен разработать модели, User
и Vendor
. Я создал представления для Vendor и настроил форму регистрации в соответствии с моими потребностями. Мне нужно настроить контроллер для регистраций поставщика, например, так:Рендеринг сообщений об ошибках разработки в пользовательской форме с областью
контроллеры/поставщиков/registrations_controller.rb
class Vendors::RegistrationsController < Devise::RegistrationsController
skip_before_filter :require_no_authentication
def create
super
end
protected
def sign_up(resource_name, resource)
true
end
def new
super
end
end
Мой взгляд на регистрацию поставщика выглядит так:
просмотров/поставщики/регистрация/new.html.erb
<h2>Sign up</h2>
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => {:multiparet => :true}) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :store_name %>
<%= f.text_field :store_name %></div>
<div><%= f.label :contact_name %>
<%= f.text_field :contact_name%></div>
<div><%= f.label :contact_phone %>
<%= f.text_field :contact_phone %></div>
<div><%= f.label :address %>
<%= f.text_field :address %></div>
<div><%= f.label :image %>
<%= f.file_field :image %></div>
<div><%= f.label :email %>
<%= f.email_field :email, :autofocus => true %></div>
<div><%= f.label :password %>
<%= f.password_field :password %></div>
<div><%= f.label :password_confirmation %>
<%= f.password_field :password_confirmation %></div>
<div><%= f.submit "Sign up" %></div>
<% end %>
<%= render "vendors/shared/links" %>
При попытке отобразить страницу, я получаю эту ошибку:
undefined method `errors' for nil:NilClass
Как я могу визуализировать ошибки в этой ситуации? Заранее спасибо!
Хммм ... Это не сработало для меня. Я получаю 'undefined method 'errors' для ошибки nil: NilClass'. – settheline
Проблема заключается в том, что Devise создает «новый» шаблон по умолчанию вместо ошибки, а не в вашей пользовательской форме. У меня такая же проблема – SsouLlesS