在 Rails 中使用 pluck 时如何格式化日期
How to format date when using pluck in Rails
我的用户模型如下所示。用户有很多附加的简历。
class User < ApplicationRecord
has_many_attached :resumes, dependent: :destroy
end
现在以不同的形式,我想按降序显示用户上传的简历列表。我设法通过使用以下代码来做到这一点。
<%= f.select :resume, options_for_select(@user.resumes.includes(:blob).references(:blob).pluck(:filename, :created_at).reverse.map{ |e| e.join(' - ') }), prompt: '-- Select --', class: 'form-control' %>
所以现在在我的 select 下拉列表中,我可以按降序查看所有上传的简历。我的下拉菜单看起来像这样 file_name.pdf - 2021-11-30 03-59-59 UTC
。我不想在下拉列表中显示时间。我只想格式化它并用文件名显示日期,像这样 john_resume.pdf 11/11/2021
.
所以我的问题是如何在使用 pluck 时格式化日期?
<% options = @user.resumes.includes(:blob).references(:blob).pluck(:filename, :created_at).reverse.map { |e| filename = e.first; created_at = e.last; [filename, created_at.strftime('%d/%m/%Y')].join(' - ') }%>
<%= f.select :resume, options_for_select(options), prompt: '-- Select --', class: 'form-control' %>
我的用户模型如下所示。用户有很多附加的简历。
class User < ApplicationRecord
has_many_attached :resumes, dependent: :destroy
end
现在以不同的形式,我想按降序显示用户上传的简历列表。我设法通过使用以下代码来做到这一点。
<%= f.select :resume, options_for_select(@user.resumes.includes(:blob).references(:blob).pluck(:filename, :created_at).reverse.map{ |e| e.join(' - ') }), prompt: '-- Select --', class: 'form-control' %>
所以现在在我的 select 下拉列表中,我可以按降序查看所有上传的简历。我的下拉菜单看起来像这样 file_name.pdf - 2021-11-30 03-59-59 UTC
。我不想在下拉列表中显示时间。我只想格式化它并用文件名显示日期,像这样 john_resume.pdf 11/11/2021
.
所以我的问题是如何在使用 pluck 时格式化日期?
<% options = @user.resumes.includes(:blob).references(:blob).pluck(:filename, :created_at).reverse.map { |e| filename = e.first; created_at = e.last; [filename, created_at.strftime('%d/%m/%Y')].join(' - ') }%>
<%= f.select :resume, options_for_select(options), prompt: '-- Select --', class: 'form-control' %>