Page tree
Skip to end of metadata
Go to start of metadata

Behaviour允许通过配置+编写脚本功能,对jira的一些行为进行控制。比如针对特写的人特写的问题在特写的状态下某个字估不能编辑。

  • 根据在问题屏幕上输入的其他数据,将字段设为必需字段。
  • 根据用户角色或组将字段设置为只读。
  • 在提交问题屏幕之前,对现场数据进行服务器端验证。
  • 根据其他问题屏幕数据设置字段值。

Behaviour依赖于客户端JavaScript。在大多数环境中,用户可以在浏览器中禁用JavaScript。如果字段的安全性很关键,则Behaviour并不能够真正的防止用户恶意输入数据。

然而,典型的用例是提示用户他们应该根据某些条件输入另一个字段,或者为了清晰起见隐藏一个字段。在这些情况下,用户在行为方面比没有Behaviour的情况要好,也不会比没有Behaviour的情况更糟。

如果某个行为使字段变为只读,则问题历史记录还可以显示该规则是否已被破坏。

这个插件的目的之一是提供一种更结构化、可维护的方法来定制字段,而不是在字段描述中输入javascript。

另一个副作用是Behaviour不能覆盖其他服务器端验证规则,例如字段配置和工作流验证器。例如,如果有一个字段配置,指定一个字段是必需的,则行为不能覆盖该要求。但是,可以选择非必需字段并使其成为必需字段。

另外一个需要说明的是,表单加载到浏览器中后,将从服务器检索字段的行为,这可能会导致应用样式的延迟。

由于JavaScript的限制,在使用远程API时不会强制执行这些Behaviour。

可以在多个上下文中应用多种行为。例如,可能有一个映射到一个项目和所有问题类型的行为,然后有另一个映射到所有项目和一个特定问题类型的行为。

通常,这是可以的,因为所有适用的行为都适用于任何给定的上下文。然而,如果两种行为都试图操纵同一字段,它们就有可能相互矛盾。例如,如果一个行为试图将字段设置为只读,而另一个行为将字段设置为可写,则只有一个行为可以有效。如果两种行为都将字段值设置为特定值,则只应用一种。

如果一种行为看起来不一致,这可能是一个原因。

在这些情况下,为该字段使用一个服务器端行为可能会有所帮助。可以将它映射到每个适用的上下文,然后在一个位置提供一些详细的逻辑,指定在什么情况下应该发生什么。

Behaviour可以应用到“创建问题”、“更新/编辑问题”、“分配问题”和“工作流转换”界面上。

在“查看问题”界面上,尝试使用行为编辑字段将启动“编辑问题”屏幕界面,而不是普通的内联编辑器。



  • No labels