Rails 中列名的别名

2023-11-22

在我的数据库中有“删除”或“监听控制”等列名。这些无法更改,因此我想为这些名称起别名以避免我的应用程序出现问题。

I found 下面的代码但它已经过时了(2005 年 8 月 5 日)并且不适用于 Rails 3:

module Legacy
  def self.append_features(base)
    super
    base.extend(ClassMethods)
  end
  module ClassMethods
    def alias_column(options)
      options.each do |new_name, old_name|
        self.send(:define_method, new_name) { self.send(old_name) }
        self.send(:define_method, "#{new_name}=") { |value| self.send("#{old_name}=", value) }
      end
    end
  end
end

ActiveRecord::Base.class_eval do
  include Legacy
end

如何给列名起别名?是否可以?


在您的模型中声明这一点。

alias_attribute :new_column_name, :column_name_in_db
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rails 中列名的别名 的相关文章

随机推荐

  • 如何正确处理UnsafeMutablePointer

    我有点困惑 我什么时候必须调用 free 以及何时 destroy dealloc 我正在编写一个学习核心音频的简短代码片段 我想如果我打电话UnsafeMutablePointer
  • iPhone-Twitter API 获取用户关注者/正在关注

    我希望能够使用适用于 ios 5 的 Twitter API 将所有用户关注者和关注用户名放入NSDictionary 但我遇到了障碍 我不知道如何使用 Twitter API 来执行此操作 但我的主要问题是首先获取用户的用户名 当我什至不
  • 为什么 PHP 的自动加载功能在 CLI 模式下不起作用?

    这更多的是为了我自己的个人启发 但是 这是一直困扰我的事情 为什么 PHP 在 CLI 模式下不能执行 自动加载 我多年来一直在阅读此免责声明 但我从未读过任何涉及原因的内容 http php net manual en language
  • 如何创建简单的 Typescript 元数据注释

    我有一些字段需要在发送到服务器端之前进行格式化 所以 我想使用自定义序列化器序列化我的打字稿类的一些字段 这样的事情是理想的 export class Person serializeWith MyDateSerializer privat
  • 使用带有一个附加参数的函数的 map() 的 JS 回调[重复]

    这个问题在这里已经有答案了 我正在尝试找到一种使用 JS 的方法Array prototype map 具有一个附加参数的函数的功能 如果可能的话 我想avoid必须重写内置的Array prototype map 该文档非常好 但没有涵盖
  • JavaScript 中 new Boolean() 的用途是什么?

    有什么用 var flag new Boolean false 相比 var flag false 你什么时候真正使用new Boolean 全局函数Boolean 可以在没有调用时用于类型转换new eg var foo Boolean
  • 实现 GetHashCode [重复]

    这个问题在这里已经有答案了 可能的重复 重写 System Object GetHashCode 的最佳算法是什么 怎样才是 GetHashCode 方法的良好实现 我做了一些谷歌搜索 发现了一些好话 MSDN 但似乎逻辑只是操作存储为类中
  • 打印其源代码的 Python 脚本

    是否可以 不一定使用 python 自省 打印脚本的源代码 我想执行一个简短的 python 脚本 它还可以打印其源代码 这样我就可以看到执行了哪些命令 脚本是这样的 command1 command2 command3 print som
  • 在 Neo4j 中,当粒度级别可以不受限制时,应该使用什么级别的特异性?

    使用图形数据库时最难理解的事情是选择粒度级别 假设我有一个图表 显示一周中某些日子发生的事情 垃圾日 周二炸玉米饼 周五自带酒水等 我可以将每一天设为一个节点 周一 周二 周三 这样 查询特定日期的速度很快 我可以创建一个名为 Day 的节
  • 通过 NativeActivity NDK 访问(更快的轮询)加速度计

    我已经搜索了有关使用 NDK 更快地轮询加速度计的教程 答案 但尚未找到求解器 刚刚找到了 androiddevelopers 文档here 我需要的是每秒大约 100 个样本 100Hz 的轮询加速度 默认情况下我的设备 带有姜饼 2 3
  • iOS8中如何在UIAlertController中添加UIDatePicker?

    我正在开发一个已经在 iOS 7 上发布的项目 但现在由于操作表出现问题 所以我现在正在实现 UIAlertController 以下是我用于通过 UIPicker 显示 UIAlertController 的代码 alertControl
  • 无法通过 Composer 安装包:缺少 PHP 扩展 zip

    我尝试在 Ubuntu PC 上使用 Composer 安装 laravel 安装程序 但在安装过程中出现此错误 您的要求无法解决为一组可安装的软件包 Problem 1 laravel installer v1 4 1 requires
  • 如何使用 C 在 Unix 上复制文件?

    我正在寻找 Win32 的 Unix 等效项CopyFile 我不想通过编写自己的版本来重新发明轮子 无需调用不可移植的 API 例如sendfile 或向外部公用事业提供资金 70 年代有效的方法现在仍然有效 include
  • 如何在 MongoDB 聚合中使用 $lookup 作为 INNER JOIN?

    我用过 lookup在我的聚合查询中 但正如我所见 它的工作原理是LEFT OUTER JOIN 我想获取完全匹配的文档 INNER JOIN lookup 有什么办法可以完成吗 这是我的inventory收藏 1 id 1 sku abc
  • 我想在运行时获取变量的类型

    我想在运行时获取变量的类型 我该怎么做呢 因此 严格来说 变量的类型 始终存在 并且可以作为类型参数传递 例如 val x 5 def f T v T v f x T is Int the type of x 但取决于你想要什么do
  • 使用 python nltk 查找两个网页之间的相似性?

    我想知道两个网页是否相似 有人可以建议带有 wordnet 相似性函数的 python nltk 是否有帮助以及如何帮助 在这种情况下使用的最佳相似度函数是什么 The spotsigs提到的论文乔伊塞斯坎解决了内容重复检测问题 其中包含大
  • Nuxt:如何防止nuxt-link转到另一个页面?

    我需要停下来nuxt link转到另一个页面 这是我的代码
  • Flask:当用户在执行长进程时关闭浏览器会发生什么?

    情况如下 我有一个应用程序 它使用 Angularjs 作为前端 使用 Flask 作为后端 我有一条看起来像这样的路线 app route api route1 methods POST def route1 result some pa
  • GUI/TUI Linux 库

    是否有任何 UI 库可以从同一源构建文本用户界面 ncurses 和图形用户界面 GTK QT 我知道 debconf 可以与各种前端一起使用 我想构建类似但可编程的东西 该库支持 YaST 独立性 使用一个代码库执行 ncurses gt
  • Rails 中列名的别名

    在我的数据库中有 删除 或 监听控制 等列名 这些无法更改 因此我想为这些名称起别名以避免我的应用程序出现问题 I found 下面的代码但它已经过时了 2005 年 8 月 5 日 并且不适用于 Rails 3 module Legacy