首页 > 解决方案 > Rails 在与日期时间相同的数据类型“period_end”上对多个模型进行排序

问题描述

到目前为止,我有这个用于排序

sets = Array.new
sets += current_user.experiences.period_end + current_user.educations.period_end
sets.sort! do |current_user.experiences, current_user.educations| 
  current_user.experiences.period_end <==> current_user.educations.period_end
end

模型用这个

class Experience < ApplicationRecord
    attr_accessible :period_end

...
class EducationExperience < ApplicationRecord
    attr_accessible :period_end
...

在 HTML 的显示中,我想做一个 if 语句,看看改变文本颜色是一种体验还是一种教育体验。

标签: ruby-on-railssortingruby-on-rails-5

解决方案


您不需要制作 if 语句,只需为每个容器分别设置适当的类名即可。例如(使用 Slim):

div(class="#{model_name.class.to_s.underscore}")
 = model_name.desired_property

您的 div 将具有类experienceeducation_experience分别,您可以为它们调整样式。干杯


推荐阅读