1

我是 ruby​​ on rails 的新手。

我有一个典型的问题,就是说我有一个类别模型。例如,用户转到类别/1 页面(这里类别是类别资源,1 是 ID 号)。

现在我需要存储那个特定的类别页面。这样当用户再次登录时,我可以将用户重定向到该特定类别页面。

请帮我解决这个问题。

提前致谢。

4

2 回答 2

1

您将不得不跨会话保留该类别 ID,因此您可能必须将其粘贴到数据库中。在您的用户上创建一个category_id属性以保存类别 ID。然后,当用户下次登录时,您可以将他们发送到他们上次访问的类别。

这是一些快速示例代码:

class CategoriesController < ApplicationController
  def show
    @category = Category.find(params[:id])
    current_user.category = @category
    current_user.save
  end
end

class HomeController < ApplicationController
  def login
    ... auth logic ...
    if current_user.category_id.present?
      redirect_to current_user.category
    end
  end
end

你的用户模型:

class User < AR
  belongs_to :category
end
于 2013-10-25T18:35:58.550 回答
0

最简单的方法是通过向用户模型添加一个字段来实现,category_id例如,您可以在其中存储与其他模型的关系,并在他们查看任何特定类别时更新它。

然后在登录时,您可以重定向到此记录(如果已定义)。

于 2013-10-25T18:27:37.790 回答