Rails 3.1 postgresql стрельба заготовок в дБ - PullRequest
0 голосов
/ 22 декабря 2011

Я впервые использую 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

Для полноты вот и все 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 ]

3 голосов
/ 22 декабря 2011

Возможно, вы переопределили методы email или email= или поместили attr_accessor :email в свой файл User.rb?

РЕДАКТИРОВАТЬ: удалите строку 2, где написано attr_accessor :name, :email.attr_accessor в контексте rails - для переменных объекта, которые не будут сохранены в базе данных.

0 голосов
/ 22 декабря 2011

Попробуйте исключить проверку форматирования по электронной почте ... если это сработает, я бы посмотрел более подробно на email_regex

...