1

アプリ内で何が起こっているのか正確にはわかりませんが、クエリの結果が作成順に表示されないようです。最近、クエリに関連するコードを変更せずに、自分自身を再配置しました。しかし、私は明らかに何かをしました。

rails cある時点で、結果をファイルに書き込もうとしていました。ただし、これはクエリの出力をファイルに書き込むだけでした。それがクエリの順序に影響するとは思いませんでした...

クエリは単純に次のようでした

File.open('text.txt', 'w') do |f|
   User.all.each do |u|
      f.puts u.email
   end
end

property :created_atそのタイムスタンプを追加してソートすることで、関係の1つを再ソートできると思います 。

しかし、私の Q+A アソシエーションは現在アクティブではないため、これを行う方法はありません。

このように呼ばれています

<% @event.event_questions.each do |q| %>

アプリでは、3 つの質問が作成されました。最終的に表示された順序は

2,1,3

neo4j クエリはオブジェクトの順序をどのように決定しますか? 私は何が間違っていたのでしょうか?

4

1 に答える 1

1

ノードが作成された日時を決定する方法がneo4jにはないと思います。内部的に増分的に生成された数値 ID を保存しますが、それらの ID はサーバーの再起動時に再利用できます。サーバーの再起動後に順序が変更された可能性があります。デフォルトでneo4jが何らかの順序でノードを返すかどうかはわかりません。指定しない限り、注文は保証されないと思いますORDER BY

を使用せずにリレーションシップを順序付けするには、次の操作ActiveRelを実行できます。

@event.event_questions(:question, :rel).order('rel.created_at')
于 2015-02-02T12:48:08.340 に答える