Deviseを使用してサインアップフォームを保存する際に問題が発生しました。私はレール3.1.1、ルビー1.9.2を使い、1.4.8を考案しています。また、私はmongoid 2.3.2を使用しています。Railsサインアップフォームが保存されない
user.rb
class User
include Mongoid::Document
# Include default devise modules. Others available are:
# :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable
devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable
#fields in addition to Devise fields.
field :name
field :display_name
index :display_name, :unique=>true
field :gender
field :website
field :about
#referenced documents
has_many :accomplishments
has_many :projects
has_many :ranks
#self reference for followers and followees
references_and_referenced_in_many :followees, :class_name=>"User", :inverse_of=>:followers
references_and_referenced_in_many :followers, :class_name=>"User", :inverse_of=>:followees
#validations
validates_uniqueness_of :display_name, :message=>"Display name already exists.", :allow_nil=>true
validates_presence_of :name, :message=>" is required"
attr_accessible :email, :password, :password_confirmation, :name
end
そして、私のサインアップフォームは、同様にかなり単純です。
/views/devise/registrations/new.html.erd
<h2>Sign up</h2>
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<p>
<%= f.label :email %>
<div class="input">
<%= f.email_field :email %>
</div>
</p>
<p>
<%= f.label :password %>
<div class="input">
<%= f.password_field :password %>
</div>
</p>
<p>
<%= f.label :confirmation %>
<div class="input">
<%= f.password_field :password_confirmation %>
</div>
</p>
<p>
<%= f.label :name %>
<div class="input">
<%= f.text_field :name %>
</div>
</p>
<br/>
<p><%= f.submit "Sign up", :class => "btn primary" %></p>
<% end %>
<%= render :partial => "devise/shared/links" %>
私の問題は、私が提出したときに、私はエラーを取得していないと、フラッシュは私が正常にサインアップした私に語ったということです。しかし、あなたがmongoのユーザーコレクションを見ても、ドキュメントは存在しません。私は自分のユーザーをかなり素朴な骨にして、それに応じてサインアップページを修正して、同じ結果を得ようとしました。私は、レコードが保存されていない理由を調べるために何を探すべきかに関するアイディアが不足しています。何が間違っている可能性があるかについてのあらゆる考え?
さらに詳しい情報が必要な場合や、問題の詳細な説明が必要な場合は、さらに深く掘り下げてください。問題を解決するために何をチェックするかについてのレンガの壁に当たってください。
この同じ問題がありました。この動作は開発モードでのみ発生しますか? – emkman