如何计算rails admin中的年龄作为出口值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何计算rails admin中的年龄作为出口值?相关的知识,希望对你有一定的参考价值。

我想在age中使用dob计算rails_admin并将其作为输出传递给导出动作。有什么办法吗?

我有这个功能:

def age(dob)
  now = Time.now.utc.to_date
  dob = DateTime.parse(dob)
  age = now.year - dob.year - ((now.month > dob.month || (now.month == dob.month && now.day >= dob.day)) ? 0 : 1)
  return age
end

但我不知道在rails_admin中需要它的位置!

export do
  field :dob, :datetime do
    label "Age"
     export_value do
        dob(value) if value 
     end
   end
end

但这是错误的。

答案

你可以这样做:

export do
  field :dob, :datetime do
    label "Age"
    export_value do
       ((Time.now - value.dob.to_time)/(60*60*24*365)).floor if value
    end
  end
end

以上是关于如何计算rails admin中的年龄作为出口值?的主要内容,如果未能解决你的问题,请参考以下文章

如何在编辑时为 Rails-Admin 设置文本模板?

[rails5.1 / devise / administrative] Admin :: AdminUsers #index中的NameError

ruby 用于检查rails_admin实现中的自定义操作的集成测试

如何从c#中的dob计算年龄[重复]

如何在导出时隐藏Rails Admin CSV选项

如何使用2个模型User / Admin rails创建Post模型?