ruby-on-rails - Rails 3中如何修改事件记录查询结果属性值

标签 ruby-on-rails ruby activerecord

我有疑问

@users = User.all

@users 包含 name、created_at、email、mobile 等作为属性值

我想将 created at 从 mysql 日期时间格式更新为用户可读格式,并在 Controller 中更新它

我已经编写了将日期转换为人类可读格式的代码,但不知道如何在查看之前为属性设置值

所以任何方法都适用

最佳答案

Rails 可以添加额外的日期/时间格式...将类似这样的内容放入初始化文件中:

Date::DATE_FORMATS[:short_date] = "%b %d, %Y"
Date::DATE_FORMATS[:short_slashed] = "%m/%d/%Y" #careful when giving this to mysql adapter
Date::DATE_FORMATS[:date_dashed] = "%m-%d-%Y"
Date::DATE_FORMATS[:mysql_date] = "%Y-%m-%d"
Date::DATE_FORMATS[:full_date] = "%A, %B %d, %Y"
Time::DATE_FORMATS[:short_slashed] = "%m/%d/%Y %I:%M %p"
Time::DATE_FORMATS[:mytime] = "%a %b %d at %I:%M %p"
Time::DATE_FORMATS[:short_date] = "%b %d, %Y"
Time::DATE_FORMATS[:date_dashed] = "%m-%d-%Y"
Time::DATE_FORMATS[:mysql_date] = "%Y-%m-%d"

然后在您的 View 中,您可以选择其中任何一个:

 @user.created_at.to_s(:mytime) 
 @user.created_at.to_s(:short_date) 

documentation

关于ruby-on-rails - Rails 3中如何修改事件记录查询结果属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13724158/

相关文章:

ruby-on-rails - 如何在使用虚拟属性时添加错误消息

ruby-on-rails - 当涉及 pluck 时 to_sql 不起作用

ruby-on-rails-3 - Rails:如何使用before_save更改基于另一个字段的字段值?

ruby-on-rails - Rails 4中与嵌套表单的多对多关系-未经允许的参数错误

javascript - 在 Rails 服务器端运行 javascript

javascript - ruby on Rails watch 函数的 Gon gem 监视所有变量

ruby-on-rails - 如何在 Rails 中设置模型继承?我有一个类和两个子类

Mysql2::错误:外语sql表中的未知列

ruby-on-rails - 使用 Rails 应用程序和 Vue.js 应用程序设置 Nginx + Passenger

ruby-on-rails - 使用 Ruby on Rails 保持项目列表有序的最佳方法是什么?