如何在SonarQube插件中获取当前项目ID?

时间:2015-11-18 16:06:08

标签: sonarqube

如何从Ruby ApplicationController类中获取当前项目ID?

代码是从 SonarQube 菜单(SECTION=Navigation::SECTION_RESOURCE)执行的,所以我无法传递任何参数。

最终目标是检查用户对当前项目的权限,因此如果可以在没有项目ID的情况下完成,那么它也将是一个有效的解决方案。

2 个答案:

答案 0 :(得分:1)

项目ID:

@project.id

项目密钥:

@project.key

项目名称:

@project.name

Perms检查:

  if has_role?(:user, @project)

取自WidgetLab Plugin

请注意,您可以让窗口小部件的相应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请求参数传递。