Я создаю приложение в Django для класса, который предоставляет бэкэнд для ИТ-компании, позволяя им отслеживать клиентов, запасы, рабочие задания и многое другое.Я могу вводить данные и просматривать их очень хорошо.
Однако моя проблема заключается в том, что я хотел бы, чтобы пара полей заполнялась автоматически, в идеале, чтобы при отправке рабочего задания этоwork_orders.hours_worked "заполнил бы" client.used_hours "для рассматриваемого клиента, а также" work_order.items_used_quantity "для заполнения инвентаризации" item.item_quantity_sold "для рассматриваемого предмета.
Я пробовал бесчисленные учебникиоб использовании отношений ManyToMany, включая документацию, и просто не могу обернуться, применяя их к контексту ведения счетов, как это.Я знаю, что это связано с промежуточными таблицами, но я не смог правильно построить отношения.
#Models
class client(models.Model):
client_name=models.CharField(max_length = 30)
contact_name=models.CharField(max_length = 20)
email=models.EmailField(max_length = 35)
phone=models.CharField(max_length = 15)
address=models.CharField(max_length=50)
city=models.CharField(max_length = 30)
state=models.CharField(max_length = 30)
zipcode=models.PositiveSmallIntegerField()
contract_plan_ID=models.ForeignKey(contract_plan,default=5)
plan_hours=models.PositiveSmallIntegerField(default=0)
used_hours=models.PositiveSmallIntegerField(default=0)
start_date=models.DateField()
class inventory(models.Model):
item_name=models.CharField(max_length = 30)
item_description=models.CharField(max_length = 100)
item_quantity_sold=models.PositiveSmallIntegerField(default=0)
item_price=models.DecimalField(decimal_places=2,max_digits=6)
class work_order(models.Model):
order_date=models.DateField()
tech_ID=models.ForeignKey(technician)
client_ID=models.ForeignKey(client)
order_details=models.CharField(max_length = 1000)
hours_worked=models.PositiveSmallIntegerField()
order_signature=models.CharField(max_length = 30)
item_used=models.ForeignKey(inventory)
items_used_quantity=models.PositiveSmallIntegerField(default=0)
Следуя документации Django примера Pizza (https://docs.djangoproject.com/en/dev/topics/db/models/#many-to-many-relationships) Мне кажется, что я ничего не могу получитьзаполнить в соответствующих полях.