在Ruby on Rails中按帖子类别分隔

时间:2011-12-08 10:57:41

标签: ruby-on-rails ruby

我目前正在尝试使用Ruby on Rails构建模型。截至目前,我正在尝试根据他们的“标签”(我的帖子模型中的一列)来分隔帖子 - 例如,我希望所有“体育”文章都弹出一个单独的页面。标签通过文本字段分配给帖子。但是,我似乎无法得出关于如何完成这项任务的结论。

以下是我在帖子模型中尝试过的一些代码:

def self.getTag
  find(:all, :include => params[:tags], :order => 'created_at DESC')
end

但是,似乎params[:tags]是无效的参数。

2 个答案:

答案 0 :(得分:0)

params在模型中不可用(且不应使用)。只需将参数传递给模型方法:

# controller code
Model.getTag(params[:tags])

# model code
def self.getTag(tags)
  find(:all, :include => tags, :order => 'created_at DESC')
end

答案 1 :(得分:0)

不确定它是不是您要找的东西,但它看起来很简单: - )

#controller (e.g. /articles/sports)
def sports
  @a = Articles.sport
end

#model
def sport
  where(:section => :sport)
end

#view
<td>
  <%= @a.title >
  <%= @a.body >
</td>