cuando elimino los datos html, entonces el valor del campo django se muestra allí. pero cuando agrego el ID de datos, el ganador de datos, etc., el valor predeterminado del campo del modelo Django no se muestra en la plantilla, ¿cómo puedo solucionarlo? ?
modelos.py
class Contest(models.Model): title = models.CharField(max_length=50) name_winner = models.CharField(max_length=50,default="Announce") @property def winner(self): if something ... winner_name = something else: winner_name = something return name_winnerhtml
{%for ....%} <td type="hidden" class="winner_click" data-winner="{{contest.winner}}" data-id="{{contest.id}}"> {{contest.name_winner}}</td> {%end for%} <script> $(".winner_click").click(function(){ var get_id = $(this).data('id') var get_data = $(this).data('winner') $(this).html(get_data).css("color","black") $.ajax( { type:"POST", url: "/admin/save_winner", data:{ 'contest_id': get_id, 'contest_winner':get_data, "csrfmiddlewaretoken": '{{ csrf_token }}' }, success: function( data ) { $(this).html(get_data).css("color","black") } }) }); </script>en este caso, cuando elimino la identificación de datos y el ganador de datos, entonces ese td muestra el valor de campo de django predeterminado, en este caso no se muestra nada.
vistas: guardar ganador
def save_winner(request): if request.method == 'POST': contest_id = request.POST.get('contest_id') contest_winner = request.POST.get('contest_winner') Contest.objects.filter(id=contest_id).update(name_winner=contest_winner) return JsonResponse({"status":"success"})Cómo puedo arreglar esto ? ¿Por qué es este problema?
Gracias