J'ai une table de forum qui a une colonne "last_post_id", qui pointe vers le dernier message fait dans un forum. Comment puis-je inclure cela dans ma requête principale du forum afin que le dernier sujet soit un objet auquel je peux accéder?inclure un résultat de base de données en tant qu'objet en utilisant une clé étrangère personnalisée
Ce ne fonctionne pas, mais il contribue à montrer ce que je suis après
Forum.all(
:include => {:posts => {:foreign_key => "last_post_id"}},
:order => "ancestry ASC, display_order ASC",
)
Je voudrais être en mesure d'accéder au dernier objet de poste en utilisant quelque chose comme « forum.last_post.date ». Est-ce possible, quelle est la solution la plus propre?
Le sql RAW devrait ressembler à ceci:
SELECT forums.*, last_post.*
FROM forums as forums
LEFT JOIN posts as last_post on last_post.id = forums.last_post_id
ORDER BY ancestry asc, display_order asc