我正在尝试为django找到一个很好的教程如何在模型中创建多个标签。
例如:
class Tag(models.Model):
name = models.CharField()
class Sample(models.Model):
name = models.CharField()
urlA = models.CharField()
urlB = models.CharField()
tagA = models.ManyToManyField(Tag)
tagB = models.ManyToManyField(Tag)
我想将标签显示为输入字段,并用','分隔,并在save方法中拆分。所以我想为2标签字段看到2个不同的输入。
如果你有一个简单的方法或知道一个好的教程,请告诉我! :)
谢谢你们!
答案 0 :(得分:0)
编辑:您不必将实际的表集放在上面。您可以生成任何想要查看的查询集。您的网址配置可以设置为显示多个网址的详细信息视图。如果我仍然不理解,请完善您的问题。
对于多个任何标签类别,你要么去m21或m2m。因此,在创建标签时,您可以逐个添加标签。您是否熟悉Django ORM的一些管理功能?请仔细查看文档。你解决这个问题的方法是合理的。不试图以错误的方式揉你,我不是天才。你可以这样做。
class Tag(models.Model):
title = models.CharField(max_length=250, blank=True)
slug = models.SlugField(blank=True
class Meta:
verbose_name = "tag"
verbose_name_plural = "tags"
ordering = ['title']
@models.permalink
def get_absolute_url(self):
return "/tags/%s/" % self.slug
class Entry(models.Model):
title = models.CharField(max_length=250, blank=True)
body = models.TextField()
tags = models.ManyToMany('Tag')
slug = models.SlugField()
@models.permalink
def get_absolute_url(self):
return "/blog/%s/" % self.slug
还有更多的代码需要为EntryAdmin和TagAdmin模型完成,还有许多其他事情也可以完成。如果你能更清楚的话,我不确定你想要实现的目标是什么?谢谢,以上是我将如何处理它的粗略说明。