【问题标题】:rails while loading data from database perform datatype conversion example datetime to time从数据库加载数据时,rails 执行数据类型转换示例 datetime 到 time
【发布时间】:2013-08-25 13:51:02
【问题描述】:

当我们从数据库加载数据时,是否可以在 Rails 中执行类型转换。我正在尝试获取数据库中当前作为日期时间的一些字段,我希望它们作为日期或时间,具体取决于应用程序中的需要。我不想在 Controller 或 View 中进行转换,因为一段时间后这些字段将在数据库中得到修复。这是否可以在模型中处理?

【问题讨论】:

  • 嗨,我的回答有帮助吗?
  • 您好,能否详细说明一下我的回答为什么不符合您的需要?

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-3.2


【解决方案1】:

据我了解,您有一个 datetime 属性,您希望根据情况将其交替显示为日期和时间

你可以在你的模型中实现两种方法,例如,如果你有 Post 模型,它看起来像这样

class Post
  attr_accessible :updated_at

  def updated_at_date
    updated_at.to_date # or whatever formatting you want to apply to it
  end 

  def updated_at_time
    updated_at.to_time # or whatever formatting you want to apply to it
  end 
end

在您的控制器和视图中,您将根据情况调用 updated_at_date 或 updated_at_time。

稍后,当您更改数据存储逻辑时,您无需更改应用程序中的任何代码,除了模型内部两个方法中的代码

【讨论】:

    猜你喜欢
    • 2021-01-24
    • 1970-01-01
    • 1970-01-01
    • 2013-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-12
    相关资源
    最近更新 更多