Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 您能否按字母顺序订购活动记录结果,并在最后指定一个条目?_Ruby On Rails_Rails Activerecord - Fatal编程技术网

Ruby on rails 您能否按字母顺序订购活动记录结果,并在最后指定一个条目?

Ruby on rails 您能否按字母顺序订购活动记录结果,并在最后指定一个条目?,ruby-on-rails,rails-activerecord,Ruby On Rails,Rails Activerecord,假设您有一个水果模型和一个水果类型列: 香蕉 苹果 橙子 其他 菠萝 可以这样点这些吗 苹果 香蕉 橙子 菠萝 其他 这里的想法是我将构建一个表单选择,从纯UI的角度来看,我希望Other作为最后一个选项。我很确定我可以在视图中找到一些奇怪的代码来将Other移动到末尾,但理想情况下,我希望通过直接命令操作或可能通过操纵正常命令(:fruit_type)操作的结果来将Other的行移动到末尾,从控制器返回此权限 在Ruby中很容易做到,而且看起来很简单。考虑到您的最后一个选项名为“其他”

假设您有一个
水果
模型和一个
水果类型
列:

  • 香蕉
  • 苹果
  • 橙子
  • 其他
  • 菠萝
可以这样点这些吗

  • 苹果
  • 香蕉
  • 橙子
  • 菠萝
  • 其他

这里的想法是我将构建一个表单选择,从纯UI的角度来看,我希望
Other
作为最后一个选项。我很确定我可以在视图中找到一些奇怪的代码来将
Other
移动到末尾,但理想情况下,我希望通过直接命令操作或可能通过操纵正常命令(:fruit_type)操作的结果来将
Other
的行移动到末尾,从控制器返回此权限

在Ruby中很容易做到,而且看起来很简单。考虑到您的最后一个选项名为“其他”:


.delete(其他)实际上通过SQL vs从存储的resultfinal_array=array.reject{| item | item.name='other'}.push(其他)销毁该记录,如果它是一个关系,而不是数组,则会发生这种情况。我会相应地更新。
other = array.detect { |item| item.name == 'Other' }
array_without_order = array.reject { |item| item.name == 'Other' }
final_array = array_without_order.sort_by(&:name).push(other)