NoPoint 动态给表添加字段,不重启服务,如何从新载入 model

u1351384616 · 2016年05月11日 · 最后由 u1351384616 回复于 2016年05月11日 · 1253 次阅读

环境: rails 4.2.1, ruby2.2.1

class Test

end

# 给表test动态添加一个字段
sql = "alter table test add column type int;"
ActiveRecord::Base.connection.execute(sql)

# 如果没有重启服务
# Test.new(type: 100).save 之后
# ActiveModel::UnknownAttributeError type 报这个异常

# 应该就是没有Test这个类没有重新加载
# 不知道如何重新载入Test
# Test.reload?

以上这种情况, 如果重新reload Test, 不重启服务

此贴已暂时被屏蔽!

以下几种情况的帖子可能会被屏蔽:

  1. 标题/正文描述不清不楚;
  2. 无意义的发帖;
  3. 存在广告嫌疑;
  4. 招聘信息描述不清楚,未按照招聘节点的要求发帖,或职位信息不符合社区用户群需求;
  5. 新注册的帐号发布产品推广贴是不允许的哦,付出和回报是相等的,当然如果你的产品确实非常有意思,或是和 Ruby 有关的东西,是不会进入这个栏目的。
  6. 太过弱的提问会被直接转移到此节点,请在提问前多尝试,多搜索;
  7. 理论上,不允许发布 QQ 群、微信群之类讨论群。

如果你发现你的帖子被屏蔽,请自我检查反省,并修改帖子内容。


招聘贴被屏蔽原因

警告: 以后招聘贴不符合要求,直接屏蔽,管理员不再回复,如认真阅读,继续新发同样格式的贴,将会被禁用账号!

  • 排版请按 Ruby China 的 Markdown 格式要求,具体请认真阅读: 排版指导,并参考 这篇招聘 的排版;
  • 招聘内容过少,缺少公司介绍,产品介绍,职位介绍,或待遇,工作地,联系方式等必要信息;
  • 重复发帖(一家公司每月限制只能发一次招聘);
  • 专业不对口(个别不对口,但有特点的,我们会放过);

如果你有时间,请阅读 招聘栏目详细说明


学会如何合理提问,请阅读:https://ruby-china.org/topics/24325

当你修改好以后,可以回帖 @huacnlee@Rei@lgn21st 任何一人,我们将会审核,通过以后才可恢复到其他节点。

注!多次发现广告嫌疑的帐号,将会被禁用帐号。

共收到 1 条回复

解决了。。。原来如此就行

ActiveRecord::Base.connection.add_column(row_code, self.code, type) # .execute(sql)
    clazz.reset_column_information
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册