草庐IT

activesupport-concern

全部标签

ruby-on-rails - 如何使用 ActiveSupport::Concern 继承类方法

我的RubyonRails应用程序中有一个小的类层次结构。我试图用一些我希望子类继承的信息来添加对描述类的支持的关注。这个问题可以用这个小样本来说明:moduleTranslatableextendActiveSupport::ConcernincludeddoendmoduleClassMethodsdefadd_translatable_fields(field_and_types)@translatable_fields||={}@translatable_fields.merge!field_and_typesenddeftranslatable_fields@translat

ruby-on-rails - Rails5 - ruby​​ 2.2.3//ActiveSupport::TimeZone 是如何改变的?

昨天(here)问一个关于时区的问题,以下不适用于在ruby​​2.2.3上运行的Rails5:ActiveSupport::TimeZone.zones_map从哪里可以了解到这一新版本之间的使用差异?实现相同目标的方法是什么? 最佳答案 最好的方法是查看currentsourcecode对于TimeZone在ActiveSupport:zones_map方法hasbeenmadeprivate,所以我猜你在Rails5下遇到了这个错误:NoMethodError:privatemethod'zones_map'calledfor

ruby-on-rails - ActiveSupport 如何计算月总和?

我很高兴也很惊讶地发现ActiveSupport以我想要的方式计算月数。无论所讨论的月份有多少天,添加1.month到特定的Time将使您与Time在同一天.>Time.utc(2012,2,1)=>WedFeb0100:00:00UTC2012>Time.utc(2012,2,1)+1.month=>ThuMar0100:00:00UTC2012monthsFixnum中的方法由activesupport提供的没有提供线索:defmonthsActiveSupport::Duration.new(self*30.days,[[:months,self]])end关注+Time中的方法

ruby-on-rails - ActiveSupport::SecureRandom.hex 问题? Rails 和 ruby

我对ActiveSupport::SecureRandom类\库有疑问。http://apidock.com/rails/ActiveSupport/SecureRandom我正在编写一个可能需要一些随机标记的应用程序,例如由SecureRandom生成的标记。这些代币的唯一性如何?这些token在本质上是唯一的还是我应该在我的数据库列上使用唯一约束更好?谢谢! 最佳答案 请注意您链接的页面,该页面表示此模块在接口(interface)(和实现,至少在一个特定版本的情况下)与http://rubydoc.info/stdlib/se

ruby - 在非 Rails gem 中使用 ActiveSupport 是否被认为是一种好的做法?

我在大型Rails项目中开发了代码。现在我想将它提取为一个单独的脚本,独立于Rails与社区共享。这是我的第一个gem,包括ActiveSupport在内,将日期函数和变形作为相对较小的gem的一部分使用可能有点矫枉过正。最好的解决方案是什么? 最佳答案 这是一个非常主观的判断。虽然ActiveSupport确实提供了许多有用的日期操作方法,但仅包括它是因为它非常繁重,并且在包含在不期望它的项目中时可能会造成绝对困惑。如果启用某些功能,例如自动加载器系统,可以以戏剧性和意想不到的方式改变require的工作方式以及处理缺失类的方式。

ruby - ActiveSupport::Notifications 应该是异步的?

我有一个非常简单的设置来测试rails3ActiveSupport::Notifications。通过阅读文档,ActiveSupport::Notifications.subscribe位应该异步执行它的操作。显然情况并非如此。示例:ActiveSupport::Notifications.subscribe"some.channel"do|name,start,finish,id,payload|#doexpensivetasksleep(10)endActiveSupport::Notifications.instrument"some.channel"#=>willreturn

ruby-on-rails - 类型错误 : wrong argument type Class (expected Module) with Controller concern

所以我有一个名为guests_controller.rb的Controller,如下所示:classGuestsController而且我在controllers/concens/中还有一个名为data.rb的问题:moduleDataextendActiveSupport:Concerndefsave_data(save_method)casesave_methodwhen"db"@guest=Guest.new(guest_params)if@guest.saveflash[:success]="Newguestentrycreated!"redirect_toguests_pat

ruby-on-rails - 无法使用 Clockwork 启动 clock.rb 模块 - 来自 activesupport 的未定义方法

我有一个网络应用需要做一些后台工作。我有一个clock.rb文件,其中包含:require'clockwork'includeClockworkrequire'./config/boot'require'./config/environment'every(5.seconds,'ticking.get'){Resque.enqueue(TickingJob)}[...restofthecodeirrelevant...]当我尝试使用clockworkapp/clock.rb启动文件时,出现以下错误:/usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ru

ruby-on-rails - 我怎么知道使用了多少 ActiveSupport Duration?

查看“HowtorecoveranintegerfromanActiveSupport::Durationobject”,我认为这应该是可能的,但是对于:2.hours.parts我得到:[[:seconds,7200]]如何才能做得更好,以便我:[[:hours,2]] 最佳答案 这可能是不可能的。如果您查看core-extensionsinActiveSupport,time.rb的实现,对于使用Numeric#hours或Numeric#minutes构造的Duration实例,parts设置为:seconds或Numeric

ruby-on-rails - 活跃商家 - 未初始化常量 ActiveSupport::XmlMini_REXML::StringIO

我有activemerchant1.16.0和rails3.0.5。我正在尝试构建一个基本代码,以使用活跃的商家与PayPal的网关进行通信。ifcredit_card.valid?#orgateway.purchasetodobothauthorizeandcaptureresponse=gateway.authorize(1000,credit_card,:ip=>"127.0.0.1")ifresponse.success?gateway.capture(1000,response.authorization)puts"Purchasecomplete!"elseputs"Err