我是rails的新手,非常感谢任何帮助。
"Pending"
有人可以建议按字母顺序排序列表的最佳方法,其中列表中包含一个字符串 - 谢谢
错误消息
comparison of String with nil failed
jobseekerpg.html.erb
<% @userj_applications.sort_by(&:status).each do |application| %>
<%= link_to application.advert.title, userr_advert_path(application.advert.userr, application.advert) %> |
<%= application.advert.city %> |
<%= application.advert.category_country.name %> |
<span>
status:
<% if application.status == nil %>
<%= "Pending" %>
<% else %>
<%= application.status %>
<% end %>
</span> |
applied: <%= application.created_at.strftime("%B %d, %Y") %><br>
<% end %>
static_controller.rb
class StaticPagesController < ApplicationController
respond_to :html, :xml, :json
def jobseekerpg
@userj = Userj.find(current_userj)
@userj_applications = @userj.forms
end
end
我的建议:
status
的列statusPending
statusPending:Pending
nill
,我就可以使用if & else statement
来调用application.statusPending
status
排序,我需要按status
&amp; statusPending
任何建议或帮助将不胜感激
答案 0 :(得分:1)
有人可以建议最好的方法来整理列表 字母顺序列表中包含一个字符串 - 谢谢
答案 1 :(得分:0)
当sort_by方法尝试将非null状态与null状态进行比较时,您似乎得到了该错误。您可以尝试替换您的陈述:
@userj_applications.sort_by(&:status).each do |application|
与
@userj_applications.sort {|x,y| (x.status || '') <=> (y.status || '') }.each do |application|
这种方式在排序期间将零值视为空字符串。
答案 2 :(得分:0)
stringList.sort!
“array.sort!”应该列表内联排序。 以下是块http://www.dotnetperls.com/sort-ruby
的一些ruby示例