将 ActiveRecord 对象的所有属性(除了 id、created_at、updated_at)设置为 nil 的最简单方法是什么?

2024-04-27

将 ActiveRecord 对象的所有属性(除了 id、created_at、updated_at)设置为 nil 的最简单方法是什么?


有一个数组叫attribute_names在模型上,它确实包含所有属性,因此使用reject来过滤属性:

class Model < AR::Base
  def nilify_attributes!(except = nil)
    except ||= %w{id created_at updated_at}
    attribute_names.reject { |attr| except.include?(attr) }.each { |attr| self[attr] = nil }
  end
end

See http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-i-attribute_names http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-i-attribute_names

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

将 ActiveRecord 对象的所有属性(除了 id、created_at、updated_at)设置为 nil 的最简单方法是什么? 的相关文章

  • 资产预编译正常,但尝试获取文件时出现 404

    好的 编译我的资产工作正常 但是当我运行时 thin start e production 我的 javascript 或 css 都没有加载 我的浏览器也取消了获取我的资产的请求 我不确定为什么会这样 但我怀疑是因为它认为对它们进行了 4
  • 为 Ruby/Rails 动态更改 iTerm2 选项卡标题

    我使用的是 iTerm2 通常会打开许多 选项卡 不幸的是 所有选项卡都显示相同的标题 ruby 因为它都是 ruby 脚本 但一个是rails服务器 另一个是rails控制台 下一个是 spork 我想将选项卡标题动态设置为 服务器 控制
  • 在 Ruby/Rails 模型/控制器中引用关联/属性时 *、self.* 和 @* 之间的差异

    假设 Rails 模型具有持久 非持久属性 那么引用它们的最佳实践是什么 如果您查看公开可用的代码 就会发现使用了不同的模式 例如 如果您有从一个模型到另一个模型的关联 使用有什么区别self association name and 协会
  • 如何用载波发送文件给用户?

    这是我将文件发送到浏览器的旧代码 def show send file File join Rails root tmp price xls end 但最近我发现 tmp 文件夹不能用作 Heroku 上的持久存储 因此我决定将文件移动到
  • Ruby 安装由于缺少扩展而中止:openssl、readline、zlib 编译错误

    我正在使用 macOS Catalina 我正在尝试通过 rbenv 安装旧版本的 Ruby 1 9 3 2 1 2 但是 在尝试安装旧版本时 我不断收到以下错误 安装 2 4 或更新版本时没问题 我已经尝试过 brew install o
  • 为什么 Capistrano 部署在资产:预编译时失败而没有错误?

    我已经尝试了我能想到的一切 但我无法让部署工作 该应用程序需要部署到由Alwaysdata托管并运行ruby 2 6 2的VPS 使用Capistrano进行部署 这是一个 Rails 6 0 2 2 应用程序 使用 webpack 处理
  • Rails 4 - 如何安装“jquery-ui”?

    为了使用 jquery 自动完成插件 我需要安装jquery ui gem 到目前为止 我的 gemfile 中有以下内容 gem jquery rails 所以我补充道 gem jquery ui rails And to applica
  • 如何在 Rails 2 中正确使用 OmniAuth

    我正在尝试为我的应用程序使用 OmniAuth 0 2 6 策略 架构为 Rails 2 3 10 Rack 版本为 1 1 OmniAuth 需要此版本或更高版本 出现的问题是 Rails 无法识别我重定向到 auth provider
  • 将表单作为本地表单传递给 Rails 5 中渲染的部分 ajax

    我已经查遍了 找不到有效的解决方案 相关控制器 profits controller rb def new tabs market Market order mjsnumber all first profit Profit new pro
  • “PG DuplicateTable:错误关系“产品”已存在”- Heroku db:迁移尝试

    Rails 菜鸟尝试将 DB 迁移到 Heroku 请原谅这个错误消息的多汁性 但我认为将其全部包含在内可能很重要 我不知道为什么会发生这种情况 也不知道这意味着什么 我的架构中只有一张产品表和一张创建产品迁移表 Migrating to
  • rspec 不适用于设计用户身份验证

    我正在尝试使用 RSpec 来测试我的 Rails 应用程序 该应用程序使用设计用户身份验证 gem 以下是已捆绑的相关 gem 的列表 devise 3 4 1 rails 4 1 7 4 1 6 rspec 3 1 0 rspec co
  • 如何强制send_data在浏览器中下载文件?

    好吧 我的问题是我正在使用send data on my Rails 3应用程序向用户发送文件AWS S3类似的服务 Base establish connection access key id gt my key secret acce
  • Capistrano 杀死资产:预编译

    我正在尝试部署我的应用程序 但我不断收到 err xxx xxx xx xxx bash line 1 9953 Killed bundle exec rake RAILS ENV production RAILS GROUPS asset
  • 如何使用符号来标识 ruby​​ 方法中的参数

    我正在学习 Rails 并回到 ruby 来了解 Rails 中的方法 以及 ruby 的实际工作原理 当我看到如下方法调用时 validates first name presence gt true 我有点迷惑不解了 如何在 ruby
  • 如何让 Rails 资产管道生成源地图?

    我想让 Rails 与编译后的 CoffeeScript 缩小的 JS 一起生成源映射 以便更好地记录错误 不过 网上似乎还没有关于如何执行此操作的全面文档 有人这样做过吗 我使用 Rails 3 2 和 Heroku Rails 支持缩小
  • 为铁路中的自引用关联建立工厂

    我有一个典型的要求 我必须按如下方式处理用户对象 user referrer and user referrers 基本上 用户可以推荐多个人 并且一个人应该由一位特定用户推荐 所以我按如下方式建立关联 他们工作得很好 class User
  • 单表继承发现问题

    我有以下3个rails类 它们都存储在一张表中 使用rails的单表继承 class Template lt ActiveRecord Base class ThingTemplate lt Template class StockThin
  • Rails has_many 通过使用 source 和 source_type 为多种类型设置别名

    这是一个示例类 class Company lt ActiveRecord Base has many investments has many vc firms through investments source investor so
  • Rails 3 UJS 干客户端 + 服务器端表单验证

    使用 jQuery 进行表单验证就像向字段添加类名一样简单 使用 Rails 进行表单验证就像将条件放入控制器 和 或模型 中一样简单 我认为应该有一种方法可以编写一次验证并将它们应用到客户端和服务器端 我一直热衷于编写自己的 javasc
  • Rails 和 Mysql 的毫秒数

    使用 Rails Mysql 时存储时间 以毫秒为单位 的最佳方式是什么 我将使用小数和composed of 以便能够将该值作为Ruby 时间进行操作 有人有更好的主意吗 自从提出这个问题以来 已经过去了好几年了 这是更新的解决方案 ht

随机推荐

  • 限制 SFTP 用户只能访问主目录

    我正在尝试在 EC2 ubuntu 服务器上设置客户端 SFTP 空间 访问权限仅限于该用户的主目录 关于此的其他主题只有大约六千个 而且我在其他选项卡中打开了其中的大多数主题 这看起来很简单 我已经搞定了 sudo groupadd lo
  • 如何将 MNIST 图像下载为 PNG

    我想将 MNIST 图像作为 PNG 文件下载到我的计算机上 我找到了这个页面 http yann lecun com exdb mnist http yann lecun com exdb mnist 我按下后 train images
  • 安装插件时出错:“无法获取框架操纵器服务”

    在我的 Windows XP 计算机上使用 Eclipse Helios 的 RCP 版本 我尝试从标准更新站点安装一些相当基本的插件 例如 PyDev 和 EPIC 不幸的是 我不断收到以下错误消息 An error occurred w
  • 在 Laravel 5 中创建“设置”模型的最佳实践是什么?

    这是我使用 Laravel 的第一个项目 我从 5 2 开始 我正在建立一个自我管理的网站 有一个管理员应该保存网站设置以供以后在网站中使用 例如 背景颜色 社交网络 图片轮播 产品等 我的第一次尝试是创建一个模型 设置 id key un
  • MATLAB 黑洞变量

    MATLAB 是否有 黑洞 或丢弃变量 假设我正在做类似的事情 rows cols size A 但我不想存储行 是否有一个 黑洞 变量可以让我发送值去死 所以任务就像 BLACKHOLE cols size A 其中 BLACKHOLE
  • Eclipse 中的预构建事件

    我有一个使用 jaxb 进行一些 xml 处理的项目 如何在 eclipse 中设置预构建事件以在构建项目之前执行 xjc 转到项目 gt 属性 gt 构建器 创建您自己的构建器并启用它 并在构建器的配置中启用 自动构建期间 等 如下所示
  • SQL部署自动化

    我正在尝试使用 Jenkins 自动化现有的 sql server 数据库部署自动化 自动化的方法之一是使用 Visual Studio 将 SQL 脚本 存储过程 视图 表创建 包含在 SQL Server 数据库项目中 使用 MSBui
  • 使用 Github for Windows 通过 SSH 处理自己的私有 Git

    现在 我正在使用 msysgit 来使用 SSH 来处理存储在 ec2 Amazon 云服务器上的我自己的私有存储库 到目前为止 我已经能够通过 Git Bash 成功连接到这些存储库 使用 ssh keygen 创建 ssh rsa 公钥
  • 当对象创建或修改 JavaScript 中的键/值时,有没有办法触发回调? [复制]

    这个问题在这里已经有答案了 我试图弄清楚如何在 JavaScript 中创建一个对象 该对象将在创建和更改任意键 值时触发事件 这是一些伪代码 var User function var user function keyAdded tri
  • DT::datatable 的背景颜色闪亮

    如何在闪亮的应用程序中更改数据表中选定行的背景颜色 我的 ui R 有以下代码 library shinydashboard header lt dashboardHeader title title sidebar lt dashboar
  • 如何使用 Twitter Bootstrap API 检测您正在使用哪个设备视图?

    我刚刚开始为我即将开展的项目使用 Twitter Bootstrap API 主导航包含 3 个主要元素 site nav 社交链接导航 搜索网站表格 在移动设备上查看网站时 我使用折叠插件折叠网站导航和搜索表单 移动视图有 2 个按钮 单
  • 静态、非成员或静态非成员函数?

    每当我有一些 实用 方向的功能时 我最终都会想知道哪个选项是最好的 例如 在我正在工作的上下文中打印消息结构 自己的或外部的 一些编码 解码代码或一些有用的转换函数 我想到的选项是 1 辅助类 结构中的静态函数 struct helper
  • 在 Google Play 中更新 APK 而不更改扩展文件

    我的 Google Play 控制台中有一个 草稿 APK 它已连接到 APK 扩展文件 版本号为9 扩展文件为 main 9 com something something obb 现在 我正在尝试在发布之前更新 APK 我增加了版本代码
  • Kubernetes 仪表板 - ServiceUnavailable(503 错误)

    我是 Kubernetes 新手 我正在尝试使用 kops 在 AWS 上设置 Kubernetes 集群 我成功地设置了集群 但是 我无法访问仪表板 UI https kubernetes io docs tasks access app
  • 如何低延迟地使用 Android 音频

    Problem 您可能听说过 Android 不提供低延迟音频 API 我所说的低延迟音频是指您应该能够从麦克风获取音频信号并播放声音 中间没有太多时间间隔 例如 5 7 毫秒 我尝试过旧的java 带有AudioRecord和AudioT
  • 颤动|如何知道小部件是否位于导航堆栈顶部(可见)

    在我的 Flutter 应用程序中 如果将新页面推送到导航堆栈 我希望暂停动画 问题 从小部件的角度来看 有什么方法可以知道小部件是否位于导航堆栈的顶部 Example while isTopOfNavigationStack Do the
  • 将容器推送到 Azure 容器注册表时资源访问被拒绝

    使用 Docker Compose 将容器推送到私有 Azure 容器注册表时 Azure DevOps 管道返回以下错误 正在推送 容器 注册表 应用程序 最新 推送引用存储库 docker io registry container 被
  • lxml:编写增量漂亮的打印 xml

    我正在处理非常大的 XML 文件 gt 1GB 并且需要一种方法来增量写入它们 有一个顶级元素和数千个大型第二级元素 每个元素都有自己的多级层次结构 我试过这个 from lxml import etree with etree xmlfi
  • 如果用户沿负方向平移 x 和 y,UIPanGestureRecognizer 不会切换到状态“结束”或“取消”

    我的 UIPanGestureRecognizer 有一点问题 识别器不报告 UIGestureRecognizerStateEnded 状态如果用户平移到左上角 意味着负 x 和 y 方向 如果有任何方向 状态将更改为 UIGesture
  • 将 ActiveRecord 对象的所有属性(除了 id、created_at、updated_at)设置为 nil 的最简单方法是什么?

    将 ActiveRecord 对象的所有属性 除了 id created at updated at 设置为 nil 的最简单方法是什么 有一个数组叫attribute names在模型上 它确实包含所有属性 因此使用reject来过滤属性