weixin_42402639 2010-10-29 18:37
浏览 331
已采纳

rails的migrate如何动态创建字段?

有一个表是这种结构,user_id,item_1,item_2,item_3,....item_180

想问问使用rails的migrate进行定义的时候,有没有比较简单的动态创建办法?

尝试了这种写法:

count=1
until count>181 do
t.integer :item_'+count.to_s
count = count+1
end

运行的时候,报错,意思是,undefined method `+'

目前找到的一种比较笨的方法是,将这种动态创建字段的语句放到migrate文件的sql附加部分,直接通过sql来写。

但是还是很想知道,有没有不通过sql而是直接通过ruby语句的写法?

  • 写回答

2条回答 默认 最新

  • vwangzhen 2010-11-02 16:26
    关注

    t.integer “item_'”+count.to_s

    :item_' 是没有这个方法的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 Selenium+docker Chrome不能运行
  • ¥15 能给我一些人生建议吗
  • ¥15 mac电脑,安装charles后无法正常抓包
  • ¥18 visio打开文件一直显示文件未找到
  • ¥15 请教一下,openwrt如何让同一usb储存设备拔插后设备符号不变?
  • ¥50 使用quartz框架进行分布式任务定时调度,启动了两个实例,但是只有一个实例参与调度,另外一个实例没有参与调度,不知道是为什么?请各位帮助看一下原因!!
  • ¥50 怎么获取Ace Editor中的python代码后怎么调用Skulpt执行代码
  • ¥30 fpga基于dds生成幅值相位频率和波形可调的容易信号发生器。
  • ¥15 R语言shiny包和ncdf4包报错
  • ¥15 origin绘制有显著差异的柱状图和聚类热图