Ruby on rails 3 如何获取具有某些默认值的列的值

Ruby on rails 3 如何获取具有某些默认值的列的值,ruby-on-rails-3,ruby-on-rails-3.2,mysql2,Ruby On Rails 3,Ruby On Rails 3.2,Mysql2,我有一个用户模型,带有属性email,name。。。 我想添加一个列,该列的默认值为true。所以我添加了迁移并运行了它,它正确地显示在数据库中。现在,当我获取值时,@user.has_已同意,它不会返回任何值。我已经在属性accessible(Rails 3.2)中写了has_。 如果我通过更新命令手动更改数据库的内容,以便此特定用户将id为1的用户的has_agreed value更改为false,然后运行相同的调用,@user.has_agreed,它将返回false 我有历史数据,我想添

我有一个用户模型,带有属性email,name。。。 我想添加一个列,该列的默认值为true。所以我添加了迁移并运行了它,它正确地显示在数据库中。现在,当我获取值时,
@user.has_已同意
,它不会返回任何值。我已经在属性accessible(Rails 3.2)中写了has_。 如果我通过更新命令手动更改数据库的内容,以便此特定用户将id为1的用户的has_agreed value更改为false,然后运行相同的调用,
@user.has_agreed
,它将返回false

我有历史数据,我想添加此默认列,不能也不打算通过数据库手动更新此列。如何获得价值

此外,问题只存在于用户表中的旧用户。对于新用户来说,它工作得很好

在user.rb中

类用户
def已经同意了
#使用此行代码。如果你同意不等于假
#读取属性(:已同意)| |默认值
如果读取属性(:已同意)。是否为空?
##默认值
符合事实的
其他的
读取属性(:已同意)
终止
终止
终止