2006-12-16
请教一个关于Find的问题..
大大们,最近在做一个ROR的程序,很多问题都是自己一个人解决的,有些实在不是很好想明白,特来请教,需求描述如下:
在论坛或者别的上面程序中,首页都会显示各个论坛板块的最新的帖子,请问这个是怎么实现的,
按照我的设想,应该是这个的:
@posts=Post.find(:all,:order=>"forum_id,create_at DESC" )
然后在显示的时候按照forum_id来显示各自板块的最新帖子,但是这个在RHTML中怎么取出最新的帖子呢??
我只能完全遍历,如下:
<% @posts.each do |post| %>
<%= post.title %>
<% end %>
这样就会全部显示出来,而我想要得只是每个板块的最新的那一个帖子,希望指教一二,谢了...
在论坛或者别的上面程序中,首页都会显示各个论坛板块的最新的帖子,请问这个是怎么实现的,
按照我的设想,应该是这个的:
@posts=Post.find(:all,:order=>"forum_id,create_at DESC" )
然后在显示的时候按照forum_id来显示各自板块的最新帖子,但是这个在RHTML中怎么取出最新的帖子呢??
我只能完全遍历,如下:
<% @posts.each do |post| %>
<%= post.title %>
<% end %>
这样就会全部显示出来,而我想要得只是每个板块的最新的那一个帖子,希望指教一二,谢了...
评论
maozhua
2006-12-17
class Forum < ActiveRecord::Base
has_many :posts,:order => 'posts.created_at desc'
has_one :last_post,:order => 'posts.created_at desc'
end
Forum.find(:all, :include=>:last_post)
iceskysl
2006-12-16
to:aguang3190076
你的建议让我的思维更加灵活,谢谢!
to:myaniu
你的方法如此详细,让我感动,谢谢!
看来我自己的思维还不够Ruby..多谢大家指导...
你的建议让我的思维更加灵活,谢谢!
to:myaniu
你的方法如此详细,让我感动,谢谢!
看来我自己的思维还不够Ruby..多谢大家指导...
myaniu
2006-12-16
这样也许好一点:
或者你可以在models 中设置(参考自beast)。
views/form/index.rhtml
forums = Forum.find :all @last_post_of_forum = [] for forum in forums @last_post_of_forum << Post.find :first,:conditions=>['forum_id=?',forum.id],:order => "create_at DESC",:limit => 1 end
或者你可以在models 中设置(参考自beast)。
class Forum< ActiveRecord::Base
has_many :posts,:order => 'posts.created_at desc' do
def last
@last_post ||= find(:first, :include => :user, :limit => 1)
end
end
end
class Post< ActiveRecord::Base
belongs_to :forum
belongs_to :user
end
views/form/index.rhtml
<td class="inv lp">
<% if forum.posts.last %>
<%= time_ago_in_words(forum.posts.last.created_at) %><br />
by <strong><%= h(forum.posts.last.user.display_name) %></strong>
<% end %>
</td>
aguang3190076
2006-12-16
Post.find_by_sql("select *,max(create_at) from post group forum_id"
个人参考
个人参考
- 浏览: 62332 次
- 性别:

- 来自: 深圳

- 详细资料
搜索本博客
我的相册
111
共 1 张
共 1 张
最近加入圈子
最新评论
-
Ubuntu Mobile Edition: ...
是疯狂,不知道什么时候能那个用一用~
-- by nishizhen -
使用XMPP4R在RubyOnRails ...
基本上都是可以的,只是不同的语言对其协议的封装实现不一样而已。原理都是差不多的。 ...
-- by iceskysl -
使用XMPP4R在RubyOnRails ...
想问一下,如果不是ror开发的网站,可以用你说的方法设计机器人吗?如果可以的话, ...
-- by sea gull -
请教一个奇怪的问题:java ...
各位帮忙分析下 :)多谢~
-- by iceskysl -
Rails4Days(ChineseVersio ...
iceskysl 写道phoenixup 写道链接地址已经失效了,如果方便请ma ...
-- by phoenixup






评论排行榜