Ruby on rails Rails 3.2-最佳位置-编辑时日期值格式问题

Ruby on rails Rails 3.2-最佳位置-编辑时日期值格式问题,ruby-on-rails,ruby,ruby-on-rails-3,date,best-in-place,Ruby On Rails,Ruby,Ruby On Rails 3,Date,Best In Place,在我的Rails 3.2 web应用程序中,我使用best\u In\u placegem创建了一个基本的简历模板。我对类型:date有问题。默认情况下,它以yyyy-mm-dd格式显示日期,但在显示和编辑时,我需要mm/dd/yyyy格式。为了更改显示中的格式,我使用了一个助手display\u as:in best\u in\u place,我可以看到格式已经更改 问题是,当我单击该值进行编辑时,它将再次返回到旧格式(yyyy-mm-dd),请帮助我解决此问题。下面您可以找到它的代码 看法

在我的Rails 3.2 web应用程序中,我使用
best\u In\u place
gem创建了一个基本的简历模板。我对类型
:date
有问题。默认情况下,它以
yyyy-mm-dd
格式显示日期,但在显示和编辑时,我需要
mm/dd/yyyy
格式。为了更改显示中的格式,我使用了一个助手
display\u as:
in best\u in\u place,我可以看到格式已经更改

问题是,当我单击该值进行编辑时,它将再次返回到旧格式(yyyy-mm-dd),请帮助我解决此问题。下面您可以找到它的代码

看法


个人资料

名称 : 电子邮件 : 出生日期 : 性别 : 婚姻状况 : 语言能力 : 国籍 : 教育背景/资格
工作经验
证明
$(文档).ready(函数(){ //$.extend($.fn.datepicker.defaults,{format:'mm/dd/yy'}); /*$.datepicker.SetDefault({ 日期格式:“mm/dd/yy” });*/ jQuery(“.best_in_place”).best_in_place(); });
模型

class Resume
附上两个截图供参考。如果看不到,请下载并放大图片。谢谢你的帮助:)

我已经找到了一个解决方案,但我不确定根据Rails惯例,它是否合适

解决方案:

只需覆盖模型本身中的
dob
字段值。这是简历模型

class Resume < ActiveRecord::Base
  belongs_to :user
  attr_accessible :certification_info, :dob, :educational_info, :gender, :linguistic_ability, :marital_status, :nationality, :work_experience_info

  def dob
    if self.read_attribute(:dob)
        self.read_attribute(:dob).to_date.strftime("%m/%d/%Y")
    else
        self.read_attribute(:dob)
    end
  end
end
class Resume
使用此解决方案,我们甚至不需要将
显示为
辅助对象,而使用
最佳位置
。它将在可编辑/非编辑模式下以
mm/dd/yyyy
格式显示值。

尝试:
$.datepicker.SetDefault({ 日期格式:“dd-mm-yy”
});

如果希望以默认格式打印日期,则需要配置初始化。 创建一个

初始值设定项/date_format.rb

使用此行

Date::DATE_FORMATS[:default] = "%m/%d/%Y"
class Resume < ActiveRecord::Base
  belongs_to :user
  attr_accessible :certification_info, :dob, :educational_info, :gender, :linguistic_ability, :marital_status, :nationality, :work_experience_info

  def dob
    if self.read_attribute(:dob)
        self.read_attribute(:dob).to_date.strftime("%m/%d/%Y")
    else
        self.read_attribute(:dob)
    end
  end
end
Date::DATE_FORMATS[:default] = "%m/%d/%Y"