J'ai un projet django qui a un formulaire avec deux boutons dans un de mes modèles. Ces boutons acceptent ou refusent une «offre», qui est l'un de mes modèles. Je passe une demande POST du modèle à la vue où j'ai deux fonctions. Comment faire pour que ces boutons d'approbation et de refus mettent à jour la valeur "approved_by_x" dans mon modèle?Mettre à jour la valeur de l'objet à partir de la vue basée sur la fonction
Le modèle:
<form method="post" class="login-container" action="{% url 'accept_booking' %}">
{% csrf_token %}
<input class="btn btn-primary" type="submit" value="Accept" name="Accept"/>
<input type="hidden" name="offer" value="{{ offer }}" />
</form>
<form method="post" class="login-container" action="{% url 'decline_booking' %}">
{% csrf_token %}
<input class="btn btn-primary" type="submit" value="Decline" name="Decline" />
<input type="hidden" name="offer" value="{{ offer }}" />
</form>
La vue:
def accept_booking(pr):
offer = pr.POST.get("offer")
print(offer)
def decline_booking(pr):
offer = pr.POST.get("offer")
print(offer
Le modèle:
class BookingOffer(models.Model):
artist = models.ForeignKey(Artist, null=True, related_name='artist')
artist_manager = models.ForeignKey(User, default=1, limit_choices_to=
{'groups__name': 'artist_manager'})
comment = models.TextField(max_length=120, blank=True)
time_slot = models.ForeignKey('TimeSlot', null=True, blank=True)
price = models.IntegerField(null=True, blank=True)
tech_needs = models.TextField(blank=True)
approved_by_bm = models.BooleanField(default=False)
accepted_by_am = models.BooleanField(default=False)