使用响应者 gem 渲染显示模板



所以我的问题是如何仅在实体属于当前用户时才呈现显示模板。我的控制器中有此代码

def show
respond_with(@site) if current_user.author_of?(@site)
end

但它仍然呈现显示模板。什么是正确的方法?

这个是@site

def find_site
@site = Site.find(params[:id])
end

放置此逻辑的最佳位置是在find_site方法中。

将查询范围限定为用户。假设您的关系user has_many sites,以下代码将起作用:

@site = current_user.sites.find(params[:id])

最新更新