Ruby on rails 在heroku中记录的顺序不正确

Ruby on rails 在heroku中记录的顺序不正确,ruby-on-rails,ruby-on-rails-3,heroku,Ruby On Rails,Ruby On Rails 3,Heroku,我对heroku有一个了解 但是在子问题的排序上有一个问题 class Question < ActiveRecord::Base has_many :sub_questions, :class_name => "Question", :foreign_key=>'parent_id' belongs_to :main_question, :class_name=> "Question", :foreign_key=>'parent_id'

我对heroku有一个了解

但是在子问题的排序上有一个问题

  class Question < ActiveRecord::Base
    has_many :sub_questions, :class_name => "Question", :foreign_key=>'parent_id'
    belongs_to :main_question, :class_name=> "Question", :foreign_key=>'parent_id'
    accepts_nested_attributes_for :sub_questions, :allow_destroy => true, :reject_if => lambda { |a| a[:content].blank? }
  end  
类问题“问题”,:外键=>“父id”
属于:main\u question,:class\u name=>“question”,:foreign\u key=>“parent\u id”
接受子问题的嵌套属性,允许销毁=>true,拒绝如果=>lambda{a | a[:content].blank?}
结束
从该页的内容可以看出:第一个问题、第二个问题、第三个问题等等。。它在数据库中具有相同的id,下面是循环

<% @question.sub_questions.each do |question| %>
     // my code....

<% end %>

//我的代码。。。。
同样的代码/数据库在我的本地机器上运行得非常好。 这是我数据库中的截图。希罗库也有一个。我试着重新启动应用程序和一切。没什么


您必须指定预期的顺序

例如:

has_many :sub_questions, :class_name => "Question", :foreign_key=>'parent_id', :order => "id DESC"

成功了。但我在rails应用程序上工作了一年,我从未指定ASC的订单,它一直对我有效。我在linode上部署了大约4个应用程序,甚至这个应用程序在linode上也运行良好。但不是在希罗库。我主要关心的不是heruko。我主要关心的是ASC订单,我应该指定订单吗?我从第一天起就错过了这件事吗?因为我一直认为rails会自动在asc中调整这些简单的关系。这可能是由于mysql和postgresql的默认设置。无论如何,您应该编写并规范您想要确保的内容,而不是提供自动排序顺序。默认排序顺序由dbms确定。MySQL和sqlite使用主键,但postgres(在Heroku上使用)按最新更新的进行排序,因此读取是完全正确的。您需要覆盖默认的排序顺序