当我告诉它以特定顺序显示结果时,RoR的行为方式存在一个小问题。Ruby on Rails - 更改订单行为
我有一个叫做包含代码列的类别的表。此代码列中的值包括1,6,12A和12B。当我告诉系统按顺序显示按照外键ID号和代码值的结果(下拉)时,它按照1,12A,12B和6的顺序列出代码(理想情况下应该是1 ,6,12A和12B)。
这里是下拉:
collection_select(:category, :category_id, Category.order(:award_id, :code), :id, :award_code_category)
我知道这个问题的一部分是这两个码的A和B部分,我不能把他们当作严格的整数(代码在一个字符串类型表)。
我很想谈谈这件事。
永远不会有一封信首先出现的情况。嗯,当我把代码粘贴到帮助文件中,然后使用你提供的下拉代码时,它说:未定义的方法'sort_by_category_codes'我错过了一个明显的步骤?在Rails 4上我应该提到。新手与帮手。 – Rachel9494
我把它称为一般意义上的“帮手”方法。自己。”在方法名称使其成为类方法(静态)之前。因此,如果该方法位于名为Helpers的类中,那么您可以将其称为Helpers.sort_by_category_codes(Category.all)。如果您有一个Category模型,则可以将该方法放在那里并调用Category.sort_by_category_codes(Category.all) –
非常感谢!我很高兴我问过,我觉得我真的从这个网站学到很多东西,所以我读的书只有很少的深度。在这里,我学习了一些关于“自我”的问题,作为回答我的问题的奖励。现在下拉菜单正确排列! – Rachel9494