我正在开发一个django项目,并希望在url的末尾包含一个slug,就像在stackoverflow.com上所做的那样:http://example.com/object/1/my-slug-generated-from-我的标题
对象ID将用于查找项目,而不是slug - 而且,就像stackoverflow.com一样,当获取链接时(仅显示它),slug根本不重要.
问题:动态生成slug是否存在下行(或上行),而不是将其保存为实际的数据库字段?
例如(不是真正的代码):
class Widget(models.Model):
title = models.CharField()
def _slug(self):
return slugify(self.title)
slug = property(_slug)
Run Code Online (Sandbox Code Playgroud)
而不是使用类似AutoSlugField的东西(例如)?
由于我的计划是让它与标题匹配,我不知道在数据库中是否有重复字段是否有意义.
谢谢!
如果您使用slug进行装饰(而非查找)目的,动态生成它是最好的主意.
此外,您发布的代码示例可以这样写:
@property
def slug(self):
return slugify(self.title)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
745 次 |
| 最近记录: |