Résultats des commandes dans le tableau sous

voix
0
@posts = Category.find(params[:id]).posts

Comment puis-je commander les résultats avec la colonne de la table des postes? Par exemple sur la colonne de posts.created_at?

Créé 27/08/2009 à 05:28
source utilisateur
Dans d'autres langues...                            


3 réponses

voix
1
@posts = Category.find(params[:id]).posts.all(:order => "created_at")

Vous pouvez également ajouter à cette autre choses telles que

@posts = Category.find(params[:id]).posts.all(:order => "created_at", :limit => 10)

ou

@posts = Category.find(params[:id]).posts.all(:order => "created_at DESC")
Créé 27/08/2009 à 10:54
source utilisateur

voix
1

Tu peux le faire:

@posts = Category.find(params[:id]).posts.all(:order => "created_at")

ne sais pas s'il y a de meilleures façons de le faire ... l'espoir qui aide =)

Créé 27/08/2009 à 05:57
source utilisateur

voix
0

Une autre solution très simple consiste à spécifier simplement l'ordre sur l'association elle-même.

class Post < ActiveRecord::Base
  belongs_to :category
end

class Category < ActiveRecord::Base
  has_many :posts, :order => "created_at"
end

Tous les messages récupérés par l'association seront déjà classés. Cela vous permettra de garder les détails de commande dans le modèle lui-même et la syntaxe SQL-ish sur le contrôleur.

@posts = Category.find(params[:id]).posts

Vous redonneront vos dossiers pour « created_at ».

Créé 30/08/2009 à 03:27
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more