0

我是 Rails 的新手,我一直在根据朋友的代码工作:http: //pastebin.com/6HwT6CBs

当我尝试操作一个变量(例如 accuracy_ratio)时,Rails 会向我抛出错误。例子:

@post = Post.new(params[:post]) #These lines work fine
@post.user = current_user
@post.name = @post.user.name

@post.accuracy_ratio = 1.0 #This one throws an error

在 NetBeans Rails 上,当我键入“@post.”时,变量 user 和 name 会在自动完成帮助器下方弹出,但不会出现 accuracy_ratio。

我认为这是因为我需要 Rails 来重新配置我对表格所做的更改。这是真的?如果没有,有谁知道我该如何解决这个问题?

编辑:非常感谢你们。正如我所说,我是红宝石磨砂膏。运行 rake db:migrate 后我得到了它的工作。

4

2 回答 2

1

Activerecord 将根据它在数据库表中找到的内容更改您的模型。如果您已经运行了迁移并且表包含该列,那么就有问题了。您可以通过“重新加载!”重新加载!并检查模型以查看它是否具有新列。

您应该加载控制台并输入 Post 以查看它有哪些字段。我对 Rails 的 netbeans 不太熟悉。我使用 Rubymine 和文本控制台。

于 2011-07-25T20:32:50.947 回答
-1

你确定类型“双”存在吗?好像您的迁移刚刚失败。请改用浮点数或小数(取决于您的要求)。

于 2011-07-25T19:07:41.997 回答