【发布时间】:2013-12-21 03:47:53
【问题描述】:
所以我的用户模型上有一个性别列,它当前是一个字符串,我想将其更改为一个整数,并将男性设为“1”,将女性设为“0”,因为它目前是男性“M”女性“ F”。运行此迁移时:
class ChangeGenderToIntegerOnUser < ActiveRecord::Migration
def change
change_column :users, :gender, 'integer USING CAST(gender AS integer)'
end
end
我收到以下错误:
错误信息:
PG::InvalidTextRepresentation: ERROR: invalid input syntax for integer: "M"
: ALTER TABLE "users" ALTER COLUMN "gender" TYPE integer USING CAST(gender AS integer)/usr/local/rvm/gems/ruby-2.0.0-p247/gems/activerecord-4.0.0.rc1/lib/active_record/connection_adapters/postgresql/database_statements.rb:128:in `exec'
我应该怎么做才能正确地将性别更改为整数?
提前致谢!
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4 psql