Define what information we need to store for questions.
Build the questions table in RDS and the corresponding scaffolding (Model, Controller, Policy).
Build the tags_questions FKey table
Build the question_overlays table
Questions should have a family_id and be versional (use a model concern for this)
Create the default questions for each tag. (e.g. Contributors will always be the default, we will have a default 'Preservation' question but templates will typically define their own or create an overlay to the default)
A Question Overlay is a series of mods to a specific Question. The overlays can be wording changes, additional options (in the case of multiple choice), boxing of selectable options from search things like repositories, etc.) We will need to define each in detail.
When fetching a Question that has an Overlay, the Rails app should be able to fetch the published Question and then simply merge the Overlay.
Define what information we need to store for questions.
Build the
questions
table in RDS and the corresponding scaffolding (Model, Controller, Policy).Build the
tags_questions
FKey tableBuild the
question_overlays
tableQuestions should have a
family_id
and be versional (use a model concern for this)Create the default questions for each tag. (e.g. Contributors will always be the default, we will have a default 'Preservation' question but templates will typically define their own or create an overlay to the default)
A Question Overlay is a series of mods to a specific Question. The overlays can be wording changes, additional options (in the case of multiple choice), boxing of selectable options from search things like repositories, etc.) We will need to define each in detail.
When fetching a Question that has an Overlay, the Rails app should be able to fetch the published Question and then simply merge the Overlay.
Refer to the Define Data Model ticket on the dmsp_aws_prototype repo.
Build RSpec tests!