RadicalxChange / rxc-voice

An app for decentralized democratic governance.
https://voice.radicalxchange.org/
Other
42 stars 14 forks source link

Allow users to participate in multiple events at once #80

Closed alexrandaccio closed 2 years ago

alexrandaccio commented 2 years ago

Is your feature request related to a problem? Please describe. Formerly, the Delegate model extended the default User class provided by Django via a OneToOneField. Each user's voice credit balance was recorded in the credit_balance field of their Delegate object.

However, we want users to be able to participate in more than one event on the app. This means they have to have a separate voice credit budget for each event. In order to implement this, we need a new database model.

Describe the solution you'd like New structure: each user has one Profile object that extends the User class. For each event that a user is invited to, a new Delegate object is created to record their voice credit balance for that event. See below:

User (holds default Django login info)

Profile (holds other account info necessary for our app)

Delegate (holds account info related to one specific event the user is participating in)