我创建了一个小型的Twitter克隆的应用程序,用户发帖的,跟随其他用户,深受用户的他们遵循有所有职位的饲料。我添加了可供选择的帖子类别,包括“惊悚片”,“西部片”,“恐怖片”等等。的Rails 3:铁轨新受迷惑的路线/控制器
当用户登录时,根Web地址是自己的仪表板。
routes.rb
root :to => "pages#home"
和页面#家是用户的饲料位于:@feed_items = current_user.feed
PagesController
def home
@title = "Home"
@featured_posts = Post.featured.limit(10)
if user_signed_in?
@user = current_user
@post = current_user.posts.build
@feed_items = current_user.feed.paginate(:per_page => "10", :page => params[:page])
end
end
现在我想通了如何解析饲料,拉出一个子集料只包含与CATEGORY_ID帖子“2”(也称为“惊悚片”)
@thriller_feed_items= current_user.feed.where(:category_id => '2')
当用户登录进入他们看到自己的仪表板和整个饲料root_path。我希望有一个链接说'惊悚片'会将当前整个@feed_items改成@thriller_feed_items,但我对路线和视图的工作方式感到困惑。 Twitter使用/!#/提到作为子集提要的地址,我是否需要做同样的事情?我将如何设置?
编辑:显示我的送纸方法是如何工作的。
用户模型
def feed
Post.from_users_followed_by(self)
end
Post模型
def self.followed_by(user)
followed_ids = %(SELECT followed_id FROM relationships
WHERE follower_id = :user_id)
where("user_id IN (#{followed_ids}) OR user_id = :user_id", :user_id => user)
end
嗨,我真的很喜欢这个解决方案,但我怎么会得到的路线是“/类别/惊悚片”?再次感谢 –