首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django - Slugify获取查找

Django - Slugify获取查找
EN

Stack Overflow用户
提问于 2011-04-19 21:42:53
回答 2查看 1.7K关注 0票数 3

如果我有一个名为Object 1的对象,并且我想对该对象执行get()操作,但我试图使用一个带参数的名称object-1来获取它,那么有什么方法可以做到这一点吗?类似于:

代码语言:javascript
复制
Model.objects.get(name__slugify = slugifiedname)

如果可能的话,我想避免在我的模型中添加额外的slug字段。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-19 23:59:23

您需要对'name‘字段的值进行一些限制,只允许-A-Za-z+,但您可以这样做:

代码语言:javascript
复制
def my_request(request, name):
    un_slugified_name = name.replace('-', '')
    objects = MyModel.objects.get(name=unslugified_name)

但是,您通过查询字符串传递的名称必须与数据库中的名称完全相同。YMMV.我的建议是,使用SlugField :)

票数 6
EN

Stack Overflow用户

发布于 2011-04-19 21:50:53

Slugify是一个Python函数。为了实现您的目标,Django必须获取完整的数据库(至少包含pk和name字段),计算每行的slug,并将其与给定的参数进行比较。这将是非常糟糕的,所以:

TLDR:否

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5717316

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档