gpt4 book ai didi

python - Django标签模型设计

转载 作者:IT老高 更新时间:2023-10-28 21:11:34 27 4
gpt4 key购买 nike

我想知道以下是否是为图像创建标记系统并能够呈现标记云的正确方法:

from django.db import models

class Tag(models.Model):
word = models.CharField(max_length=35)
slug = models.CharField(max_length=250)
created_at = models.DateTimeField(auto_now_add=False)

def __unicode__(self):
return self.word

class Photo(models.Model):
slug = models.CharField(max_length=250)
filename = models.CharField(max_length=200)
extension = models.CharField(max_length=4)
size = models.IntegerField()
...
tags = models.ManyToManyField(Tag)

def __unicode__(self):
return self.slug

请注意,我的数据库表将包含数百万行,每个图像将有 4-8 个标签。

请指教。

最佳答案

如果您只想创建标签云,那么该数据模型就足够了。我会做一个修改:

tags = models.ManyToManyField(Tag,related_name='photos')

这将使您的照片 View 中的反向查找更易于阅读和内存。

但是,我会考虑您的标签的其他用例。标签云是您唯一想使用标签的东西吗?该关系是否应包含任何元数据?

如果您计划拥有数百万行,那么缓存将与数据模型一样重要。

另外,为了避免重新发明轮子,看看有没有其他人建立了一个可以满足你的目的的库:http://www.djangopackages.com/grids/g/tagging/

关于python - Django标签模型设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13318128/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com