gpt4 book ai didi

arrays - Rails 3 => 未定义的方法 'array' 当我尝试 rake db :migrate

转载 作者:行者123 更新时间:2023-12-04 09:26:41 25 4
gpt4 key购买 nike

这是我在这里的第一篇文章,所以放轻松。我正在尝试在 Rails 3.2.1 中构建我的第一个应用程序。我正在尝试使用以下终端命令为 Paint 生成一个脚手架:

rails generate scaffold Paint paint_family:string paint_hex:array paint_available:boolean     paint_location:integer paint_quantity:integer paint_additional_info:text

但是当我尝试迁移时,出现以下错误:
undefined method `array' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x007fbd8bdb1c58>

这是迁移记录:
  class CreatePaints < ActiveRecord::Migration
def change
create_table :paints do |t|
t.string :paint_family
t.array :paint_hex
t.boolean :paint_available
t.integer :paint_location
t.integer :paint_quantity
t.text :paint_additional_info

t.timestamps
end
end

结尾

我一生都无法弄清楚为什么会这样。但那是因为我不知道我在做什么。任何建议/帮助将不胜感激。

最佳答案

问题是这样的:

t.array :paint_hex

没有名为 array 的列类型.您可以使用 stringtext如果你真的想保存一个数组,然后序列化该值。
class Paint < ActiveRecord::Base
serialize :paint_hex
end

顺便说一句:用 paint_ 作为所有属性名称的前缀是 Rails 应用程序的一种非常罕见的命名方案。

关于arrays - Rails 3 => 未定义的方法 'array' 当我尝试 rake db :migrate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11254467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com