我正在 Rails 上构建一些简单的东西,并且我已经安装了 Devise。用户登录并创建链接- 我创建了一个帐户,创建了几个链接,然后当我创建另一个帐户时,我可以转到 /links/5 并仍然看到另一个用户发布的内容。
我希望使这个应用程序尽可能个性化,关于如何解决这个问题的任何想法?
我正在 Rails 上构建一些简单的东西,并且我已经安装了 Devise。用户登录并创建链接- 我创建了一个帐户,创建了几个链接,然后当我创建另一个帐户时,我可以转到 /links/5 并仍然看到另一个用户发布的内容。
我希望使这个应用程序尽可能个性化,关于如何解决这个问题的任何想法?
一种选择是在 LinksController 中使用简单的 before_filter。就像是:
def check_authorization
if current_user != link.user
redirect_to ... (Redirect as appropriate for your app)
end
end
这假设有一个链接方法可以获取当前链接。就像是
def link
@link ||= Link.find(params[:id])
end
正如之前的评论者所提到的,Cancan 也是一个可行的选择。