修复项目中的问题与权限控制优化
在项目开发过程中,我们常常会遇到各种问题,尤其是在进行权限控制时,可能会影响到一些功能的正常使用。下面我们将详细介绍如何解决这些问题,优化项目的权限控制。
1. 修复编辑项目功能
当运行 bin/cucumber features/editing_projects.feature:14 时,Cucumber 找不到 “Edit Project” 链接,报错信息如下:
And I follow "Edit Project"
no link with title, id or text 'Edit Project' found
➥(Capybara::ElementNotFound)
这是因为当 Cucumber 点击 TextMate 2 链接时,会跳转到 show 动作,由于用户没有访问该项目的权限,会被重定向到 projects_path ,而当前页面没有 “Edit Project” 链接。但此功能的用户是管理员,应该能够访问所有项目。因此,需要修改 ProjectsController 中 find_project 方法里 @project 的声明方式,将:
@project = Project.readable_by(current_user).find(params[:id])
<
超级会员免费看
订阅专栏 解锁全文
86万+

被折叠的 条评论
为什么被折叠?



