gpt4 book ai didi

activerecord - Rails ActiveModel 属性类型

转载 作者:行者123 更新时间:2023-12-05 08:02:09 27 4
gpt4 key购买 nike

我在没有数据库后端的 Rails 3.1.1 项目中使用 ActiveModels。

我想知道如何将属性的类型设置为 String、Boolean、Decimal。

据我了解,当使用由数据库支持的 ActiveRecord 时,类型将直接从数据库元数据中获取。但是没有数据库,我应该在哪里定义属性类型呢?

编辑

我认为我的问题可以问得更好,如何将模型元数据添加到由 rest 或 JSONRPC2 服务支持的模型?

例如,我可以创建翻译器,确保将该模型编码为 JSON,知道哪个属性(ruby 中的属性,JSON 中的属性)是 bool 值,哪个是数字——或者我可以尝试动态地找出它-- 但似乎最好让我的模型用元数据注释,说明将这些属性/属性存储为什么类型(在服务中)。

接受的答案仍然不完全合适。尽管 Rails 模型不关心类型,但序列化方案 (JSON) 确实关心类型。在 JSON 中,数字和 bool 值不应序列化为字符串。

最佳答案

您使用 attr_accessor 定义类的属性以供 ActiveModel 使用。不需要类型。

参见 this question关于“键入的 attr_accessor”。

关于activerecord - Rails ActiveModel 属性类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9115772/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com