1
我有一个文章模型,它与Catalog模型具有OnetoOne关系。是否可以从文章的保存方法中创建Catalog的实例?我想用同名的目录附上文章,最简单的做法是同时创建这些文章。Django从另一个模型保存方法创建模型的实例
这里是我的目录类:
class Catalog(models.Model):
name = models.CharField(max_length=100)
price = models.IntegerField
def __unicode__(self):
return self.name
文章类别:
class Article(models.Model):
catalog = models.OneToOneField(Catalog, related_name='article_products', blank=True, null=True)
title = models.CharField(max_length=200)
abstract = models.TextField(max_length=1000, blank=True)
full_text = models.TextField(blank=True)
proquest_link = models.CharField(max_length=200, blank=True, null=True)
ebsco_link = models.CharField(max_length=200, blank=True, null=True)
def __unicode__(self):
return unicode(self.title)
def save(self, *args, **kwargs):
self.full_text = self.title
super(Article, self).save(*args, **kwargs)
我想保存方法中类似这样的一些逻辑:我不知道这是否是可能的虽然
cat = Catalog.create(title = self.title)
cat.save()
我用了一个稍微不同的方法,但这让我走上了正确的轨道。谢谢 @receiver(post_save,sender = Article) def create_catalog(sender,** kwargs): if kwargs.get('created',False): Catalog.objects.get_or_create(name = kwargs.get('instance '),价格= '10') – byrdr 2014-11-01 13:31:43