更新: 检查控制台,很多用户实际上将进入数据库,还是出现该错误信息!Rails的:“电子邮件已经采取”每一个电子邮件,我进入
即使是更大的问题,你会发现我有一个重定向到root_path成功保存到数据库。它永远不会去那里。这是日志。如果它节省了,它有时会转到show动作,但实际上有一段时间,浏览器似乎卡住了,所有东西都会变成空白,我必须点击地址字段才能将其展示到show.index.html。
Redirected to http://localhost:3000root_path
Completed 302 Found in 34ms
[2012-01-08 18:08:27] ERROR URI::InvalidURIError: the scheme http does not accept registry part: localhost:3000root_path (or bad hostname?)
/Users/mel/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/uri/generic.rb:746:in `rescue in merge'
/Users/me/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/uri/generic.rb:743:in `merge'
/Users/me/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpresponse.rb:163:in `setup_header'
/Users/me/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpresponse.rb:101:in `send_response'
/Users/me/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:86:in `run'
/Users/me/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
原题:
我创建一个表单供用户通过注册来赢取iPad。它有两个字段,电子邮件和名称。 当我提交表单,我不断收到同样的错误消息,不管是什么我的电子邮件进入
1 error prohibited this from being saved:
There were problems with the following fields:
Email has already been taken
奇怪的是,当我调试参数,可以就说明我进入任何新的电子邮件地址。
utf8: "\xE2\x9C\x93"
authenticity_token: UgkHFLBfKYM2tZ11u6ItWvPS5XeTIMhFuJDwvhgqe30=
ipad: !map:ActiveSupport::HashWithIndifferentAccess
name: Amy
email: [email protected]
commit: Sign up
action: create
controller: ipads
任何人有什么想法?我有点小白......
我只是将此代码添加到恩基博客我做on Rails的...
我有我的ipad.rb模型此验证(笔记,我有在我只是在形式忽略了迁移的Twitter地址栏)
attr_accessible :name, :email, :twitter
validates :name, :presence => true,
:length => { :maximum => 50 }
validates :email, :presence => true,
:uniqueness => true
这是我ipads_controller.rb
class IpadsController < ApplicationController
def new
@ipad = Ipad.new
@title = "iPad Contest"
end
def create
@ipad = Ipad.new(params[:ipad])
if @ipad.save
redirect_to 'root_path'
else
@title = "Poo"
render 'new'
end
end
end
这是我的new.html。 erb
<h1>Win an iPad</h1>
<%= @title %>
<h1>Sign up for iPad</h1>
<%= form_for(@ipad) do |f| %>
<%= render 'shared/errror_messages' %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :email %><br />
<%= f.text_field :email %>
</div>
<div class="actions">
<%= f.submit "Sign up" %>
</div>
<% end %>
<%= debug params %>
你在你的模型中包含':email' at'attr_accessible'吗? – sscirrus 2012-01-09 01:45:05
是的,我做到了。我会更新OP。 attr_accessible:name,:email,:twitter – Leahcim 2012-01-09 01:50:33
错误信息实际上是在用户模型上,而不是在iPad上的模型 '1错误禁止这个**用户**被保存:' 你会更新用户模型涉及到iPad的型号? – 2012-01-09 02:02:21