如何从Ruby ApplicationController
类中获取当前项目ID?
代码是从 SonarQube 菜单(SECTION=Navigation::SECTION_RESOURCE
)执行的,所以我无法传递任何参数。
最终目标是检查用户对当前项目的权限,因此如果可以在没有项目ID的情况下完成,那么它也将是一个有效的解决方案。
答案 0 :(得分:1)
项目ID:
@project.id
项目密钥:
@project.key
项目名称:
@project.name
Perms检查:
if has_role?(:user, @project)
请注意,您可以让窗口小部件的相应Java类从getTemplatePath
返回文件的绝对路径,以执行edit-erb / save / browser-refresh开发。
E.G。
@Override
protected String getTemplatePath() {
return "/path/to/plugin/src/main/resources/my_widget.html.erb";
// return "/my_widget.html.erb";
}
答案 1 :(得分:0)
我通过调用Project.by_key(params[:id])
解决了问题.Sonar将项目密钥作为id
请求参数传递。