为实现用户选择服务/软件包而建议的模型结构-Django

时间:2019-04-29 16:59:39

标签: django python-3.x django-models

我正在构建一个提供不同服务的应用程序,用户可以选择并购买特定的所需软件包。我想知道创建模型的最佳方法,以便我们的用户可以选择并付款后将其设置为活动状态。我有一个模型可以保存有关每个服务的信息,其中包括(包标题/说明/价格)。我需要另一个模型来处理与每个用户相关联的服务,但是我不确定该如何处理。

我已经创建了两个模型,如下所示,但不确定如何完成上述任务,因为我认为这样做会更好。

class ClubPackages(models.Model):

club_id = models.ForeignKey(ClubInfo, on_delete=models.CASCADE)
PACKAGE_STATUS = (
    ('0', 'Active'),
    ('1', 'Not Active')
)
player_register_package = models.CharField(default='1', max_length=1, choices=PACKAGE_STATUS)
player_register_price = models.DecimalField(default=100.00, max_digits=8, decimal_places=2)
player_register_expiry = models.DateField(default=timezone.now)
roster_package = models.CharField(default='1', max_length=1, choices=PACKAGE_STATUS)
roster_price = models.DecimalField(default=50.00, max_digits=8, decimal_places=2)
roster_expiry = models.DateField(default=timezone.now)
rent_a_pitch_package = models.CharField(default='1', max_length=1, choices=PACKAGE_STATUS)
rent_a_pitch_price = models.DecimalField(default=100.00, max_digits=8, decimal_places=2)
rent_a_pitch_expiry = models.DateField(default=timezone.now)
shop_package = models.CharField(default='1', max_length=1, choices=PACKAGE_STATUS)
shop_price = models.DecimalField(default=50.00, max_digits=8, decimal_places=2)
shop_expiry = models.DateField(default=timezone.now)


class OurPackages(models.Model):

title = models.CharField(max_length=50)
description = models.TextField(max_length=200)
price = models.DecimalField(max_digits=8, decimal_places=2)

def __str__(self):
        return self.title

0 个答案:

没有答案