2017-07-18 23 views
-3

私はPostgreSQLでActiveRecordを使用していますが、私はorderメソッドを使用しています。ActiveRecordクエリの順序が正しくない

ただし、順序が正しくありません。カテゴリ内の

categories_controllerで

def show 
    @categories = Category.all.order('id DESC') 
end 

それは、このような順序を示す図

<% @category.posts.each do |post| %> 
<p><%= post.id %></p> 
<% end %> 

を示しました。

<p>3</p> 
    <p>7</p> 
    <p>6</p> 
    <p>4</p> 
    <p>5</p> 
    <p>1</p> 
    <p>2</p> 
+2

'show'メソッドでは、' @ categories'を定義しましたが、ビューでは '@ category'を使用しています。また、 'Category'モデルをソートしていますが、ビューではカテゴリの投稿を表示しています。それはまったく無関係です。 – 31piy

+0

'category'や' posts'で注文したいですか? –

答えて

1

あなたはpost.idで注文したいが、あなたが実際にcategory.idによって発注されています。正しいクエリは次のようになります:

関連する問題