我在 Django 中的选择字段上遇到问题。我需要一个表格来将订单移动添加到工单中。
这些是choices.py中的选择
STATUS_CHOICES = (
(1, ("Orden Creada")),
(2, ("En Tienda Asociada")),
(3, ("Recibida en Cuyotek")),
(4, ("En Mesa de Trabajo")),
(5, ("Trabajo completado")),
(6, ("Sin Solución")),
(7, ("Lista para retirar en Cuyotek")),
(8, ("Lista para retirar en Tienda Asociada")),
(9, ("Es necesario contactar al cliente")),
(10, ("En espera de Repuestos")),
(20, ("ENTREGADA")),
)
如果用户不是员工,我需要限制选择仅显示“8 和 20”。
这是models.py中的模型
class OrderMovements(models.Model):
fk_workorder = models.ForeignKey(WorkOrder)
status = models.IntegerField(choices=STATUS_CHOICES, default=1)
timestamp = models.DateTimeField(auto_now_add=True, auto_now=False)
def __str__(self):
return str(self.fk_workorder)
这是 forms.py 中的形式
class AddMovementForm(forms.ModelForm):
class Meta:
model = OrderMovements
fields = ['status']
def clean_status(self):
status = self.cleaned_data.get('status')
return status
我找不到有关如何制作此过滤器的信息。
感谢您的帮助!