Ada*_*cht 6 activerecord ruby-on-rails ruby-on-rails-3
在我的Rails 3应用程序中,如果实际对模型进行了更改,我只想在某个日志中写入一个条目.因此,如果用户没有更改任何字段并单击"提交",则不应该有日志条目.
但似乎无论如何,Rails似乎总是认为模型的DateTime属性已经改变了.
当我调试时,我在更新期间运行以下行,它们都返回true,我认为这将是一个矛盾.
@request.begin_date == @request.begin_date_was # Returns true
@request.begin_date_changed? # Returns true
Run Code Online (Sandbox Code Playgroud)
我想知道它是否与更改初始化程序中的默认日期格式(到'%m /%d /%Y')或可能与时区有关.
我很难过,所以任何帮助都会非常感激.
您可以在 en.yml 区域设置文件中更改默认日期和时间格式,如下所示:(这是我的项目之一中法语格式的示例)
date:
formats:
default: "%d/%m/%Y"
short: "%e %b"
long: "%e %B %Y"
long_ordinal: "%e %B %Y"
only_day: "%e"
time:
formats:
default: "%d %B %Y %H:%M"
time: "%H:%M"
short: "%d %b %H:%M"
long: "%A %d %B %Y %H:%M:%S %Z"
long_ordinal: "%A %d %B %Y %H:%M:%S %Z"
only_second: "%S"
am: 'am'
pm: 'pm'
Run Code Online (Sandbox Code Playgroud)
或者您可以简单地将日期时间实例转换为:
@request.begin_date.strftime("%m/%d/%Y") == @request.begin_date_was.strftime("%m/%d/%Y") 甚至:
l(@request.begin_date, :format => your_format_in_locale_file) == l(@request.begin_date_was, :format => your_format_in_locale_file)
希望它能帮助你
| 归档时间: |
|
| 查看次数: |
662 次 |
| 最近记录: |