Project

General

Profile

How to modify view on Projects page (to avoid certain disaster!)

Added by Shawn Hooper over 13 years ago

We are in the process of migrating from BugNet to Redmine and I need your help avoiding certain disaster!

How do I modify the Projects page so that it displays each (shared) Version of a particular project? Also, below each of these Versions, I would like to include a list of projects that have at least one issue assigned to that version. Something like:

Version 1
  • Project A
  • Project B

If this sounds odd…here’s why -

We have an application that we periodically add features to. These features are developed independently from the application and once they are stable, that version of the feature code is merged into the application code.

My plan is to represent these features as separate Redmine projects with their own set of un-shared versions. The core application will also be represented as its own separate Redmine project but it will have versions that are shared with the other (feature) projects.

Once a version of a feature (project) is ready to be merged into the core (project), we will change the target version of the issues within that feature project to that of the appropriate shared version within the core project.

So, in the simplest representation, it would look like this:

Core project (with shared Ver1 version)
  • No issues of its own
Feature A project
  • Issue 1 (target version: Ver 1)
Feature B project
  • Issue 2 (target version: Ver 1)

However, certain stakeholders at my company would like to see a list of the core versions with a list of the feature projects that have been targeted for that core version below it (i.e. projects that have issues with a target version of one of the shared core versions) like this:

Ver1
  • Feature A
  • Feature B

However, to accomplish this, they are planning to create “Ver1” as both a project and a version with “Feature A” and “Feature B” as sub-projects so that they can use the Projects page to view the data in this manner.

Despite my warnings that this violates the data model (and is prone to be problematic and a violation of fundamental RDBMS concepts in terms of duplicating data), they are obstinate that this is the only solution to viewing the relationship between the Core project versions and Feature projects as described above.

To try to display the data this way without compromising the data model, I created a custom query that includes the Project column and groups the issues by target version. This almost does the trick but there are still 2 problems:
  1. Too much data. This shows all issues below each version when we really only want to see a list of unique projects below each version.
  2. Its not limited to only showing the shared versions from the Core Project. It also shows the unshared versions from the Feature Projects which we don’t want to include in this view.

Therefore, the best solution (that I can think of) is to modify the view on the Projects page to present the data in this manner.

Any help or advice is appreciated.

p.s. I’m fairly comfortable with Redmine but Ruby is still greek to me. However, I work with a few Ruby developers who I can probably count on assisting me so long as they know what they need to change.