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 中列名的别名 的相关文章

  • 在所有延迟的作业之前挂钩

    是否可以在所有delayed job任务之前运行一个方法 基本上 我们试图确保每台运行delayed job的服务器都有我们代码的最新实例 因此我们希望运行一个方法来在每个作业运行之前检查这一点 我们已经有了 check 方法并在其他地方使
  • 在 Codeigniter 中从其他数据库切换动态数据库

    mi 文件 config php 是 active group default active record TRUE db master 是唯一的数据库 db master hostname localhost db master user
  • 包括 collection_select 帮助程序的空白和默认值

    我希望在 Rails 应用程序的下拉列表中有一个 选择一个选项 选项 我正在使用collection select辅助标签 它看起来像这样 我希望下拉菜单的默认选项是 选择国家 地区 Use the include blank option
  • 如何在 Rails 3 中连接表并计算记录数?

    我有一个Collection有很多硬币的类 我正在尝试选择拥有两枚以上硬币的收藏品 目前 我可以直接通过 Ruby 来完成此操作 但效率极低 我当前的代码 collections Collection all select c c coin
  • 在 Rails App 中实现 WrapBootstrap 主题

    我刚刚购买了一个 wrapbootstrap 主题 并尝试将其插入我的 Rails 应用程序中 一些 css 如填充 导航栏 字形图标 和大多数 javascript 无法正常运行 我将所有样式表和 javascript 分别复制到 ass
  • Capistrano 无法定位应用程序部署中的 Gemfile 错误

    我正在尝试将 Rails 应用程序部署到生产服务器 并决定使用以下命令将其部署到 DigitalOcean本指南 https gorails com deploy ubuntu 14 04 overview RVM 要部署 我使用以下命令
  • Postgres 上的 C 语言环境和 Posix 语言环境有什么区别?

    我知道 Postgres 上的数据库区域设置负责国家字符的正确顺序 正确的小写 大写等 但为什么有两种语言中立的语言环境 posix and c 它们之间有什么区别 还是只是一个中立的语言环境有两个不同的名称 UPDATE正如 Magnus
  • YouTube 视频出现 Phantom JS 错误

    Phantom JS 版本 1 9 1 恶作剧版本 1 3 0 从今天开始 YouTube 嵌入视频在运行 javascript 测试时会出现 poltergeist 错误 我的 YouTube 代码只是默认的嵌入 YouTube 代码 这
  • 是否可以更新 amazon dynamodb 中的哈希键?

    我想更新 amazon dynamodb 表中的哈希键值 我在同一张表中也有一个范围键 是否有可能做到这一点 您无法更新哈希键值 您必须删除并重新创建该项目 这是相关的aws文档http docs aws amazon com amazon
  • Heroku 码头部署

    我正在关注这篇文章https devcenter heroku com articles container registry and runtime https devcenter heroku com articles containe
  • S3 的 Rails 回形针默认图像

    我尝试在应用程序中使用default url 但我使用S3 存储图像 我不确定我需要在那里输入什么 URL 或者我是否必须创建一个假图像才能将所有内容放在那里 由于我的图像总是通过 S3 渲染 所以我不知道如果我只是在公共文件夹中放入一些默
  • MySQL解释更新

    作为我大学复习的一部分 我试图回答以下问题 至少在表的一个属性上创建索引 employees 数据库 您可以在其中使用 MySQL EXPLAIN 工具 清楚地显示好处 在条款或检索方面 和负面 在 更新条款 创建相关索引的信息 对于第一部
  • oracle lag 函数与 group by

    我有一个查询忽略从前一个值增加的值 例如 采用下表 col1 col2 col3 5 1 A 4 2 A 6 3 A 9 4 B 8 5 B 10 6 B 现在进行以下查询 select col1 from select col1 lag
  • Ruby on Rails link_to 与 put 方法

    我是 Rails 新手 我正在尝试使用 link to 帮助程序创建一个发出 PUT 请求而不是 GET 请求的链接 具体来说 我正在尝试创建一个链接 从管理员面板激活我的应用程序中的用户帐户 我正在使用 Rails 3 0 5 我的rou
  • 带分页的 Rails 随机活动记录

    我需要查找特定资源的所有记录并以随机顺序显示它们 但具有一致的分页 如果开始分页 您将不会看到相同的记录两次 每次用户访问页面时 显示顺序都应该是随机的 我在用将分页 http wiki github com mislav will pag
  • 无法获取 ConfigBean 中实体的正确 ID - Java EE

    我正在构建一个药房管理应用程序 每个药房都需要一名管理员 约束是这样的 public class Pharmacy implements Serializable Id GeneratedValue strategy GenerationT
  • 使用多个 WHERE 子句更新 Codeigniter 中的批次

    我查看了 CI 用户指南来了解如何处理update batch 并且它似乎只接受一个索引来匹配要更新的行 但在我的例子中 我需要指定两个索引 例如lang and id page我一起用作索引 这样的lang en id page 115是
  • ActiveRecord 查询,按关联排序,最后一个 has_many

    我试图列出所有Users by the created at最近创建的关联记录 通讯 列 到目前为止我所拥有的 User includes communications order communications created at IS
  • 限制 has_many 关联中的对象数量

    我有一个相册 里面有很多照片 counter cache 设置会更新相册表中的 photos count 列 如何限制相册的照片数量 就我而言 使用就足够了validates length of class Album has many p
  • 资产:预编译 - 权限被拒绝 - 仅在一台计算机上

    我的 dropbox 文件夹中有一个 Rails 应用程序项目文件夹 我在 2 台电脑上工作 家用电脑和笔记本电脑 均为 win 7 If I do bundle exec rake assets precompile在电脑上运行正常 我看

随机推荐

  • 如何正确处理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