OpenSlides / OpenSlides/openslides-meta
*_one_of constraints in collections
Nobody has claimed this yet.
- Dominant language
- PLpgSQL
- Stars
- 0
- Forks
- 25
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 12
Description
In the collection files it should be possible to define a list of fields, that will be checked together in the model-level constraint triggers. Depending on the trigger type, error should be raised if:
maximum_one_of: More than one of the fields from the list is selected. Example:- motion: [lead_motion_id, diff_version]
minimum_one_of: None of the fields from the list is selected. Example:- personal_note: [star, note]
exactly_one_of: None or more than one of the fields from the list is selected. Examples:- poll_option: [meeting_user_id, text]
- meeting_poll_default: [used_as_assignment_poll_config_in_meeting_id, used_as_motion_poll_config_in_meeting_id, used_as_topic_poll_config_in_meeting_id] (Note: these are view fields).
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the collection files and the model-level constraint triggers mentioned in the issue. Trace how existing collection constraints are defined and validated, then verify support for maximum_one_of, minimum_one_of, and exactly_one_of using the listed field combinations. Done means each trigger type raises an error for its invalid selection cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- sql
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100