首页 > 解决方案 > 如何通过另一个模型添加模型实例

问题描述

伙计们,我正在研究如何添加可以通过另一个模型添加的模型实例。就像标签是如何完成的。如果模型实例不存在,则添加它。如果确实存在,请不要添加,只需使用现有的。我想用一个类别模型来做到这一点,如果类别存在,则使用现有的类别,反之亦然。

#楷模

class Category(models.Model):
    name = models.CharField(max_length=200)
    slug = models.SlugField(max_length=200, unique=True)

class Company(models.Model):
    name = models.CharField(max_length=120, help_text='Name of your company', )
    slug = models.SlugField(unique=True, blank=True, null=True)
    categories = models.ManytoManyField(Category, related_name="company", blank=True, null=True, 
                                 on_delete=models.PROTECT)

#查看次数

class CompanyCreate(CreateView):
    model = Company
    form_class = CompanyForm
    template_name = 'company/form.html'

因此,当添加公司时,可以添加许多类别,但使用已经存在的类别。提前致谢

标签: djangodjango-modelstagsmanytomanyfield

解决方案


推荐阅读