【发布时间】:2021-10-17 05:20:59
【问题描述】:
我正在为销售网站编写 django 框架中的代码,并且某些商品的可用件数是有限的。 要获得剩余产品的数量,我必须调用某个函数。 现在我想问一下是否有任何方法可以在 models.py 或 forms.py 模块中调用此函数或任何其他方式来设置此限制。
这是我的视图模块:
from django.http.response import HttpResponse, HttpResponseRedirect
from django.shortcuts import render
from .forms import orderForm
from regpage.models import User
from django.views import View
class orderView(View):
def get(self, request):
form = orderForm()
return render(request, "dashboard/order.html", {'form': form,})
这是我的表单模块:
from django import forms
from .models import Order
class orderForm(forms.ModelForm):
class Meta:
model = Order
fields = ['productCount']
这是我的模型模块:
from django.db import models
from django.db.models.enums import Choices
from regpage.models import User
from django.core import validators
from django.core.validators import EmailValidator, MaxValueValidator, MinValueValidator
class Order(models.Model):
userID = models.ForeignKey(User, on_delete=models.CASCADE)
productCount = models.PositiveSmallIntegerField() #THE LIMITED FIELD
这是我的 html 文件:
{% extends 'dashboard.html' %}
{% block dashTitle %}
Order
{% endblock dashTitle %}
{% block dashContent %}
<p style="text-align:center;font-size:30px;"><b> Order Page </b> </p>
<form style="text-align:center;font-size:25px" method="POST">
{% csrf_token %}
{% for field in form %}
<div class="form-control {% if field.errors %}errors{% endif %}">
{{ field.label_tag }}
{{ field }}
{{ field.errors }}
</div>
<br>
{% endfor %}
<br>
<button type="submit">Order</button>
</form>
{% endblock dashContent %}
本网站只有一个产品,需要调用一个函数来获取剩余产品的数量。
【问题讨论】:
标签: django django-models django-views django-forms django-validation