【发布时间】:2013-05-17 19:22:06
【问题描述】:
我开发了一个表单,用户可以在其中添加他/她的first name 和last name。
对于username(unique 属性),我设计了以下方法:
FirstName: harrY LastName: 波特 --> username: 哈利波特
FirstName: HARRY LastName: POTTER --> username: Harry-Potter-1
FirstName: harrY LastName: PottEr --> username: Harry-Potter-2
等等..
这是我的函数定义:
def return_slug(firstname, lastname):
u_username = firstname.title()+'-'+lastname.title() //Step 1
u_username = '-'.join(u_username.split()) //Step 2
count = User.objects.filter(username=u_username).count() //Step 3
if count==0:
return (u_username)
else:
return (u_username+'-%s' % count)
我不知道在Step 3 之前要做什么来实现。我应该把[:len(u_username)]放在哪里比较字符串?
编辑:
如果Harry-Potter有多个实例,则应用此方法,通过解决最后添加整数的问题。我的问题是:我将如何检查附加到Harry-Potter 的最后一个整数是什么。
【问题讨论】:
-
你想用名字和姓氏创建一个 slug 吗?你需要数什么?
-
@PepperoniPizza:我想计算数据库中有多少
Harry-Potter-X,{其中X是一个整数}。例如,如果有Harry-Potter-56,那么下一个应该被赋予username为Harry-Potter-57 -
好的,我明白了,你可以发布你的模型,以便考虑查询吗?
-
@PepperoniPizza:这是默认的
UserDjango 内置模型。它有id、email、username等。但是,您为什么需要模型?
标签: python django string unique-constraint