I have two models: CustomUser and AgreementReglament
At this moment relation between the models looks like this:
class AgreementReglament(models.Model):
name = models.CharField(max_length=32) # just name of the reglament
approvers = models.ManyToManyField( # set of users to approve
'CustomUser',
related_name='agreement_reglaments'
)
How can I set order of approvers (e.g. CustomUser1 should be the first in particular AgreementReglament1, CustomUser2 should be second and so on, but in AgreementReglament2 CustomUser2 can be the first)
UPDATE: ordering is based on the POST request data Example of post request to create AgreementReglament:
{
"name": "Reglament1",
"approvers": [
{
"approver_name": "Alex",
"approver_order": 1,
},
{
"approver_name": "Bob",
"approver_order": 2,
}
]
}
UPDATE2
class AgreementReglament(models.Model):
name = models.CharField(max_length=32) # name of the reglament
approvers = models.ManyToManyField( # set of users to approve
'CustomUser',
related_name='agreement_reglaments',
through='Approval'
)
class Approval(models.Model):
user = models.ForeignKey(CustomUser, on_delete=models.CASCADE)
agreement = models.ForeignKey(
AgreementReglament,
on_delete=models.SET_NULL,
blank=True,
null=True
)
order = models.IntegerField()