我是 ruby on rails 的新手。
我有一个典型的问题,就是说我有一个类别模型。例如,用户转到类别/1 页面(这里类别是类别资源,1 是 ID 号)。
现在我需要存储那个特定的类别页面。这样当用户再次登录时,我可以将用户重定向到该特定类别页面。
请帮我解决这个问题。
提前致谢。
我是 ruby on rails 的新手。
我有一个典型的问题,就是说我有一个类别模型。例如,用户转到类别/1 页面(这里类别是类别资源,1 是 ID 号)。
现在我需要存储那个特定的类别页面。这样当用户再次登录时,我可以将用户重定向到该特定类别页面。
请帮我解决这个问题。
提前致谢。
您将不得不跨会话保留该类别 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
最简单的方法是通过向用户模型添加一个字段来实现,category_id
例如,您可以在其中存储与其他模型的关系,并在他们查看任何特定类别时更新它。
然后在登录时,您可以重定向到此记录(如果已定义)。