[英]Django data save model without form in template
当单击按钮而不使用表单时,我想在数据库中保存一个值。 单击按钮时,我想将 h2 中的值保存到另一个 model 。 我能做些什么?
模板
<div class="widget-main">
<center><h2 name="urun" value="{{ urun.urun_adi }} ">{{ urun.urun_adi }}</h2></center>
</a>
<input type="submit" onclick="location.href='{% url 'sepete_ekle' %}'" value = "sepete ekle" class="btn btn-sm btn-default pull-right">
Sepete Ekle
</input>
<a href="" class="btn btn-sm btn-success">{{urun.fiyat}} TL</a>
</div>
意见
def sepete_ekle(request):
if request.method == 'POST':
urun = request.POST["urun"]
status = 0
urunler = Siparis.objects.create(urun,status)
urunler.save()
messages.success(request, " Sepete Eklendi")
return redirect('/bayi/profil_duzenle')
else:
return HttpResponseRedirect("/")
MODEL
class Siparis(models.Model):
bayi = models.ForeignKey('auth.User', verbose_name='bayi', on_delete=models.CASCADE, related_name='bayi',limit_choices_to={'groups__name': "BayiGrubu"})
urun = models.ForeignKey(Urun, on_delete=models.CASCADE)
adet = models.IntegerField()
tarih = models.DateTimeField()
status = models.BooleanField()
class Meta:
verbose_name = 'Bayi Sipariş'
verbose_name_plural = 'Bayi Siparişleri'
将您在问题声明中发布的 html 替换为以下问题。
<div class="widget-main">
<center>
<h2>{{ urun.urun_adi }}</h2>
</center>
<form method="POST" action="{% url 'sepete_ekle' %}">
<input type="hidden" value="{{ urun.urun_adi }}" name="urun" />
<input
type="submit"
value="sepete ekle"
class="btn btn-sm btn-default pull-right"
/>
</form>
<a href="" class="btn btn-sm btn-success">{{urun.fiyat}} TL</a>
</div>
要了解有关表单隐藏字段的更多信息,这里有一个简单的解释供参考,请查看
一旦尝试这个,我希望它有效。 将 view.py 更改为此。 为您的 function sepete_ekle 添加一个论点。
def sepete_ekle(request,urun):
if request.method == 'POST':
status = 0
urunler = Siparis.objects.create(urun,status)
urunler.save()
messages.success(request, " Sepete Eklendi")
return redirect('/bayi/profil_duzenle')
else:
return HttpResponseRedirect("/")
和 urls.py 到这个:
path('/path/to/function/<urun>',views.sepete_ekle,name='sepete')
在您的 html 文件中:
<div class="widget-main">
<center><h2 name="urun" value="{{ urun.urun_adi }} ">{{ urun.urun_adi }}</h2></center>
</a>
<input type="submit" onclick="location.href='{% url 'sepete_ekle' %}'" value = "sepete ekle" class="btn btn-sm btn-default pull-right">
Sepete Ekle
</input>
<a href="{% url 'sepete' urun.urun_adi %}" class="btn btn-sm btn-success">{{urun.fiyat}} TL</a>
</div>
因此,当您单击按钮时,h2 值将在 url 中发送,并且在视图中它将取自争论。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.