如何向 ActiveRecord 添加新属性

2024-03-23

从模型中获取所有值后,我想向 ActiveRecord 类添加另一个自定义属性(该属性不是数据库中的列),以便我可以在视图中使用它,但 Rails 不允许我添加一个。我应该在其模型类中添加什么?

@test.all

@test.each do |elm|
    elm[:newatt] = 'added string'
end

error:

can't write unknown attribute `newatt'

try this

class Test < ActiveRecord::Base
  attr_accessor :newattr
end

你可以像这样访问它

@test = Test.new
@test.newattr = "value"

您可能会注意到这是一个属性,而不是哈希值。所以它使用.句法。但是,如果您需要它像哈希一样运行,您可以在不定义新属性的情况下执行此操作

@test.all
@test.each do |elm|
    new_elm = {}
    new_elm[:newatt] = 'added string'
end

最后,我不太确定你想做什么。如果这对您来说没有意义,请重新表述您的问题,以便我们更好地理解问题。

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

如何向 ActiveRecord 添加新属性 的相关文章

  • Rails 3:如何获取特定时区今天的日期?

    为了获得今天的日期 我这样做 Date today gt Fri 20 May 2011 我想获取特定时区的今天日期 例如 Melbourne 我的设置中有以下设置application rb config time zone Melbou
  • MacOS 每秒唤醒次数错误

    构建 Rails 应用程序 ruby 2 4 0p0 Rails 5 1 4 并使用我的 Macbook Air MacOS High Sierra 10 13 2 进行本地测试 我不断遇到此问题 过去 241 秒内有 45001 次唤醒
  • 为什么 Rails 托管在 VM 上时会缓存视图文件并共享 Samba 上的代码库

    我有以下设置 我的本地计算机 OS X 上的代码作为 Samba 共享共享 在 Parallels 中运行的 Ubuntu VM 安装共享 在开发模式下运行 Rails 2 1 通过 Mongrel WEBrick 或乘客 如果我对视图进行
  • Rails - 动态构建深度嵌套对象(Cocoon /nested_form)

    我目前有一个具有深层嵌套的复杂形式 并且我正在使用Cocoon https github com nathanvda cocoongem 根据需要动态添加部分 例如 如果用户想要在销售表单中添加另一辆车 代码如下所示 div class a
  • 使用 Rails 进行 Paypal 自适应(链式)支付

    众所周知 PayPal 支持自适应 链式 支付 其中一个买家发送款项 并使用一个 API 帐户持有人进行处理 并且该款项可以发送给多个 用户 我的问题是 这个方法是否也支持 接受信用卡 对于 买方 是否可以抓卡 详细信息请访问我们的网站并使
  • Rails 序列化数据验证

    我有一个通过默认 AR 行为序列化为 YAML 的字段 例如 它目前位于哈希数组中 name gt hi url gt bye name gt hi url gt bye name gt hi url gt bye 有没有办法可以在其中一些
  • Rails minitest,数据库清理器如何将 use_transactional_fixtures = false

    我想在 ministest 中禁用 use transactional fixtures false 以捕获 after commit 回调 我应该设置什么以及在哪里设置 你有几个选择 一种是创建一个没有事务固定装置的测试 并希望对测试数据
  • Rails 验证日期范围的唯一性

    我有一个涉及员工缺勤记录的应用程序 我需要确保每条记录的开始日期和结束日期不重叠 例如 如果我输入了从今天开始到明天结束的缺勤记录 则不可能以任何方式在该日期范围内输入另一个缺勤记录 所以我不能制作一个从前天开始 然后在后天或任何更晚的日期
  • 在 debian Squeeze 上安装 RoR

    有什么方法可以在我的 debian squeeze 上安装 Ruby 1 9 2 或 1 8 7 Rails 3 吗 您可能不想在生产计算机上使用 RVM 它的 PATH 魔力会在不明显的地方 例如 cron 作业 被破坏 然后你就会陷入困
  • Rails f.check_box 设置选中/未选中值

    所以我在 Rails 中得到了一个带有复选框的表单助手 我希望该复选框在选中或取消选中时具有 thatvalue 或 thisvalue 值 我还没有找到如何设置它的地方 f check box field 我发现了类似的东西 但它不起作用
  • 如何在 Rails 6 中禁用 TurboLinks?

    所以我面临这个问题 我的服务器实际上从客户端的请求中检索了正确的数据 并将这些数据发送到浏览器 我可以清楚地看到它可用于浏览器 CTRL SHIFT C gt Network gt my request 但是 浏览器不会刷新 所以我现在看到
  • 如何使用 RSpec 检查 JSON 响应?

    我的控制器中有以下代码 format json render json gt flashcard gt flashcard lesson gt lesson success gt true 在我的 RSpec 控制器测试中 我想验证特定场景
  • 如何跳过 Devise SessionsController 的 before_filter ?

    我有一个before filter in my ApplicationController 也就是说 对于我的项目中的每个控制器 我怎么能够skip before filter对于设计的SessionsController创造行动 这是我的
  • 是否可以让 Capistrano 通过反向 SSH 隧道进行结帐?

    我正在开发一个驻留在公共主机上的应用程序 但我必须将其源代码保存在公司防火墙后面的 Git 存储库中 我越来越very厌倦了通过缓慢的部署scp 复制整个存储库并在每次部署时通过 SSH 传送 并且希望远程主机只需执行git pull更新
  • HABTM 关系和accepts_nested_attributes_for

    我有一个可以让我创建的表单新博客文章我希望能够创造新类别来自同一个表格 我在帖子和类别之间有一个习惯关系 这就是我遇到麻烦的原因 我有以下2个型号 class Post lt ActiveRecord Base has and belong
  • Ruby on Rails 3 - 为每个请求重新加载 lib 目录

    我正在为 Rails 3 应用程序创建一个新引擎 正如您所猜测的 该引擎位于我的应用程序的 lib 目录中 但是 我在开发它时遇到了一些问题 事实上 每次更改引擎中的某些内容时 我都需要重新启动服务器 有办法避免这种情况吗 我可以强制rai
  • 使用复选框过滤列表

    我有一个电影列表及其评级 在我的页面顶部 我有一个表单 其中提供了一个复选框列表 其中显示了每个可用的评级 G PG 13 等 一旦用户单击复选框并点击提交 我只想显示所选的电影 在我的索引方法中 我有一个名为的实例变量 filtered
  • 自定义通用 Rails 错误消息

    我们的 Rails 应用程序被设计为链接到多个客户端数据库的单个代码库 根据子域 应用程序确定要连接到哪个数据库 我们使用液体模板为每个客户定制演示文稿 我们无法为每个客户定制通用的 我们很抱歉 出了点问题 消息 谁能推荐一种方法让我们能够
  • Rails 3.1+ 的 Jasmine 与 Mocha JavaScript 测试 [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我对茉莉花有经验并且非常喜欢它 有谁有 Jasmine 和 Mocha 的经验 特别是 Rails 的经验吗 我想知道是否值得转用 我已经在 J
  • Rails 3.1 和图像资源

    我已将管理主题的所有图像放入名为 admin 的文件夹内的资产文件夹中 然后我像平常一样链接到它 Ruby image tag admin file jpg CSS logo background url assets images adm

随机推荐

  • 多个action.class.php

    我确实有一个模块 例如帐户 当然 您会在 acount actions action class php 中找到一个名为的文件 PHP 文件action class php 变得越来越大 可以延长吗 举个例子 account action
  • 当我拥有原始文件时恢复 AES 加密文件密码

    如果某人同时拥有加密文件和原始文件 有没有办法知道用于加密文件的秘密是什么 AES 是一种分组密码 不易受已知明文攻击 http en wikipedia org wiki Known plaintext attack 蛮力是你唯一的选择
  • Ext JS:xtype 有什么用?

    我看到 Ext JS 中有很多例子 其中不是实际创建 Ext JS 对象 而是一个带有xtype属性被传入 这有什么用 如果无论如何都要创建对象 性能增益在哪里 如果这是原因 xtype是识别特定组件的简写方法 panel Ext Pane
  • 在这种特定情况下,使用成员初始值设定项列表和在构造函数中赋值之间有区别吗?

    在内部和生成的代码方面 以下之间是否存在真正的区别 MyClass MyClass capacity 15 data NULL len 0 and MyClass MyClass capacity 15 data NULL len 0 谢谢
  • 进程的页表是否映射到内核地址空间?

    我当时正在做 Windows 系统编程 想知道是否可以在源代码级别访问进程的页表 这是我所了解的与虚拟内存相关的页表 假设用户刚刚在 Windows 操作系统 32 位 上运行一个名为 A 进程的进程 首先 操作系统为A进程创建并维护4GB
  • ER 图中的 mysql 工作台列图标意味着什么?

    谁能帮我解释一下 MySQL Workbench 中创建的数据库 ER 图中的图标 蓝钻 实心 蓝钻 未填充 红钻等 Thanks 我在 MySQL 的网站上找到了这些资源 http dev mysql com doc workbench
  • 一个数组占用多少空间?

    如果我创建 10 个整数和一个 10 的整数数组 占用的总空间会有什么差异吗 我必须创建一个包含数百万条记录的布尔数组 所以我想了解数组本身将占用多少空间 整数数组表示为保存整数的内存块和对象头 对于 32 位 JVM 对象标头通常需要 3
  • 有修订的三重存储

    我需要存储 RDF 三元组 同时跟踪修改 有这项服务吗 或者 在使用上下文感知三重存储时如何跟踪修订 Edit 请注意 我不仅仅需要变更集 我还需要查看过去任何时间的三元组 我试图通过存储额外的三元组来解决这类问题 这些三元组描述了谁在何时
  • 为什么不能在函数中声明模板?

    Reading C 模板 完整指南 http www amazon co uk Templates Complete Guide David Vandevoorde dp 0201734842它说 请注意 模板不能被声明 在一个函数中 它不
  • Leanback 库支持 API 级别 19 Android for TV 应用程序吗?

    是否有针对 Android API 级别 19 的 Leanback 库支持 在这个链接中https developer android com reference android support v17 leanback package
  • 从 AudioBuffer 在 Node.js 中写入 wav 文件

    我是 Node js 编程新手 我正在尝试将 m4a 文件转换为 wav 文件 我使用了 audiobuffer to wav 和 web audio api 这是我的代码 const fs require fs const toWav r
  • Java接口和继承

    如果我们有 public interface Foo public class Bar implements Foo 之间有区别吗 public class BarBar extends Bar implements Foo and pub
  • 如何使用 AVFoundation 将视频转换为动画 gif?

    在使用 AVFoundation 和 AVCamRecorder 录制电影后 我正在推送一个新的 UIViewController 目前 我正在从保存电影的 URL 播放电影 效果很好 我在理解如何将视频从 URL 转换为动画 gif 时遇
  • 抑制已经遇到的列表元素

    您好 我有一个正在尝试编辑的速度模板 它目前有一个看起来像的块 foreach element in myList element field1 element field2 issued by element field element
  • 为什么bark方法无法调用

    class Animal void run class Dog extends Animal void bark class Testing public static void main String args Animal d new
  • Eclipse - 为现有项目设置 .classpath 文件

    我有一个java项目 来自其他人的 Eclipse 项目的工作文件夹 我认为这是一个 Repast Simphony 项目 在我的 Eclipse 中 我创建了一个新的 Java 项目并告诉它使用现有的代码 所以它似乎已经引入了所有代码 但
  • 将每周事件添加到日历

    我想向本地添加一个事件Calendar 在这里我想在每个Tuesday until 31 December 2015 btnWeekly setOnClickListener new OnClickListener Override pub
  • 如何使用 devtools install_github 从私人仓库安装 R 包?

    我正在尝试从我的 github 存储库安装示例包 https github com jpmarindiaz samplepkg 当存储库公开时 我可以通过 R 解释器使用以下任何命令来安装它 install github jpmarindi
  • 使用 Flexbox 将元素与底部对齐

    我有一个div和一些孩子 div class content h1 heading 1 h1 h2 heading 2 h2 p Some more or less text p a href class button Click me a
  • 如何向 ActiveRecord 添加新属性

    从模型中获取所有值后 我想向 ActiveRecord 类添加另一个自定义属性 该属性不是数据库中的列 以便我可以在视图中使用它 但 Rails 不允许我添加一个 我应该在其模型类中添加什么 test all test each do el