- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
当我查看一个对象(在终端或 Rails 控制台中)时,如何确定它是否是 PORO?
我理解这意味着一个对象只是 Ruby(不依赖于 Rails)。但我不明白在实际意义上。
例如,当我打印puts @a_form.inspect
到控制台时,是不是PORO?
#<AForm:0x007fdbf9b33468 @a=#<A id: 1,...
我进行了大量谷歌搜索,但没有找到与非 PORO 对象相比更简单的示例答案。
谁能给出实际比较?
如果这是一个 super 新手问题,请提前致歉。
最佳答案
PORO(代表普通旧 Ruby 对象)和非 PORO 之间的区别不是技术上的。所有对象在技术上都是 Ruby 对象。
相反,术语 PORO 有时会在谈论像 Rails 这样的大型框架时使用,这些框架倾向于使用“大”、“复杂”的对象,如 ActiveRecord 模型来处理其大部分逻辑。这些大对象往往包含大量逻辑和(通常是隐含的)定义的行为和约定。
在谈论 PORO 时,通常这样做是为了与这些大对象区分开来,并鼓励使用更小的、特定的类/对象来构建您的业务逻辑,这可能看起来更简单。这些对象通常不需要像 ActiveRecord 模型那样由稳定存储支持,而只是包含动态数据并定义业务逻辑(您通常称之为应用程序的行为),而无需使用来自复杂框架的大量工具。
但同样,这不是一个严格的技术区分,甚至也不是一个有明确界限的区分。这是一种社会区别,通常旨在鼓励在单一框架之外进行思考。
至于术语本身,它相对较新并且(您现在可能已经猜到了)几乎没有任何实际的硬性含义。它最近流行起来,人们提示现在一些大型 Rails 应用程序往往具有的结构(例如精益 Controller 、胖模型,您将整个业务逻辑放入 ActiveRecord 模型中。因此,该术语主要用于区分这些胖模型。
关于ruby - 如何确定一个对象是否为 PORO?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39129101/
作为我的第一个 Rails 应用程序,我正在构建一个作业管理应用程序,其中包含以下表格: 用户(来自 Devise 身份验证) 学校 类(class) 作业 与我发现的大多数类(class)/评分应用
当我查看一个对象(在终端或 Rails 控制台中)时,如何确定它是否是 PORO? 我理解这意味着一个对象只是 Ruby(不依赖于 Rails)。但我不明白在实际意义上。 例如,当我打印puts @a
我创建了一个 R-o-R Form 对象,它接收属性,然后将这些属性保存到一些嵌套对象中,但是,在验证失败时,输入值消失。有没有办法留住他们? class FormObject include Ac
似乎在 PORO 上仅使用类方法(如 Rails 应用程序中的服务)并由 Controller 调用时,在所有请求中只创建了一个服务对象实例。 我知道 Rails 会根据请求创建 Controller
嗨, 我正在尝试擦干我的一些规范。我提取了一个 Assertion 类,它执行几个 should ......但是大多数 RSpec 期望魔术不再起作用。 我将尝试构建一个简单的示例来说明我的问题。
英雄联盟手游Weve let too many poros in是什么意思?应该如何解决?英雄联盟手游登陆时有时候登不进去,出现各种各样的错误提示,这些错误提示是什么意识,该如何解决,下面就为大家详
为了更加面向对象,我发现自己创建了更多 PORO (Plain-old_ruby-objects)。在 Rails 中,这仅意味着模型类不继承自 ActiveRecord::Base,,因此该模型不受
This website列出可用于为特定 Rails 文件创建规范文件的各种生成器。 我知道如何为模型生成规范文件。 例如:rails generate rspec:model Customer 创建
我通常将 ActiveModel::Model 包含到一些 PORO 中(例如对于 FormObject::SignUp)。我读过新的 Rails 5 ActiveRecord::Attribute
在我的 Rails 应用程序中的普通旧 Ruby 对象 (PORO) 中:我有以下方法: def some_method content_tag(:li, link_to("Do somethin
在我的 Rails 应用程序中的普通旧 Ruby 对象 (PORO) 中:我有以下方法: def some_method content_tag(:li, link_to("Do somethin
我有一些逻辑将在启 Action 业队列之前处理数据。但是,在 Controller 内部以及 Rails 控制台中,我似乎无法访问这些类。示例: 在 app/services/hobo_servic
我是一名优秀的程序员,十分优秀!