0

我第一次在开发中使用 postgresql,并已成功将二进制文件安装到我的 10.6 机器上。我createdb => 'vitae_development'用这个用户创建了一个 Rails 超级用户。它出现在 中$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]]

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

pgAdmin3 似乎尽我所能地显示了适当的表格,但没有我能找到的数据。

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

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

为了完整起见,这里是整个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

4

2 回答 2

3

您是否可能覆盖emailoremail=方法或放入attr_accessor :email您的User.rb文件中?

编辑:取出第 2 行,上面写着attr_accessor :name, :email. attr_accessor在 rails 的上下文中是用于不会保存到数据库中的对象变量。

于 2011-12-21T22:37:19.460 回答
0

尝试消除电子邮件上的格式验证......如果它有效,我会更深入地了解 email_regex

于 2011-12-21T22:44:16.577 回答