我想在models.py
中定义Book
和Member
到Borrow
之间的关系
但我不知道如何定义Borrow
关系。
在Borrow
表中,必须确定谁借了哪些书,哪些书在哪一天还了。我应该为这个日期字段使用另一个表吗?你知道吗
models.py
from django.contrib.auth.models import AbstractUser
from django.db import models
from django.utils.translation import gettext as _
class CategoryType(models.Model):
category_name = models.CharField(max_length=200)
def __str__(self):
return self.category_name
class Book(models.Model):
name = models.CharField(verbose_name="عنوان", max_length=128)
number_of_copy = models.IntegerField(default=0)
writer = models.CharField(max_length=64)
B_category = models.ForeignKey(CategoryType, on_delete=models.CASCADE)
class Meta:
ordering = ["B_category"]
def __str__(self):
return self.name
class Borrow(models.Model):
borrowed_from_date = models.DateField(_("borrow Date"), default=0)
borrowed_to_date = models.DateField(_("return Date"), default=3)
actual_return_date = models.DateField()
borrowed_by = models.ForeignKey(member, on_delete=models.CASCADE)
books = models.ManyToManyField(Book)
def __str__(self):
return self.id
class Member(AbstractUser):
pass
我认为在Member
类中,我应该有一个包含borrow_id
的字段,但是怎么做呢?你知道吗
在我看来,您需要使用
ManyToMany
关系和through
模型(这样您就可以为Borrow
模型的每一行存储额外的信息)也许这个链接(https://docs.djangoproject.com/es/2.1/ref/models/fields/#django.db.models.ManyToManyField.through)可以更清楚地说明这一点。你知道吗
相关问题 更多 >
编程相关推荐