Rails 3.1 postgresql将空白射入db

时间:2011-12-21 20:17:26

标签: ruby-on-rails-3 postgresql pgadmin

我第一次在开发中使用postgresql,并已成功将二进制文件安装到我的10.6机器上。我和这个用户一起创建了一个Rails超级用户createdb => 'vitae_development'。它显示在$pqsl => '/du',但当我输入/dt时,我得到'没有关系'。

我的pg gem是pg-0.12.0

在rails 3.10控制台中,输入:User.create!(:name => "Sam", :email => "sam@email.me")

结果输出为:

INSERT INTO "users" ("created_at", "email", "name", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "id"  [["created_at", Wed, 21 Dec 2011 19:40:13 UTC +00:00], ["email", nil], ["name", nil], ["updated_at", Wed, 21 Dec 2011 19:40:13 UTC +00:00]]

这似乎是一堆空白。我搜索过Google,但一定错过了正确的搜索字词。

pgAdmin3似乎显示了我所能确定的最佳表格,但没有我能找到的数据。

这是我的database.yml的相关片段:

development:
  adapter: postgresql
  database: vitae_development
  username: rails
  password:
  pool: 5
  timeout: 5000

为了完整性,here's the whole user.rb

class User < ActiveRecord::Base
  attr_accessor :name, :email

  email_regex = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i

  validates :name, :presence => true,
                   :length => { :maximum => 50 }
  validates :email, :presence => true,
                    :format => { :with => email_regex },
                    :uniqueness => { :case_insensitive => false }
end

我在俯瞰什么?我已完成rake db:migrate

2 个答案:

答案 0 :(得分:3)

您是否可以覆盖emailemail=方法或将attr_accessor :email放入User.rb文件中?

编辑: 取出第2行,其中显示attr_accessor :name, :email。 rails的上下文中的attr_accessor用于不会保存到数据库的对象变量。

答案 1 :(得分:0)

尝试删除电子邮件中的格式验证...如果有效,我会深入了解email_regex