저는 몇 시간 만에 막혀서이 문제를 해결할 수 없습니다.Django SlugField 고유하지 않음
다음 코드는 잘 작동하지만, 이미 존재는 "제목"을 작성하는 경우 내가 얻을 :
UNIQUE constraint failed: appname_shopaccount.url_shop
모델을
class ShopAccount(models.Model):
user = models.ForeignKey(User)
title = models.CharField(max_length=150)
url_shop = models.SlugField(max_length=200, unique=True)
company_name = models.CharField(max_length=200)
def save(self, *args, **kwargs):
self.url_shop = slugify(self.title)
super(ShopAccount, self).save(*args, **kwargs)
def __str__(self):
return self.title
양식
class SignUpShopForm(ModelForm):
class Meta:
model = ShopAccount
fields=['title', 'company_name']
exclude= ('user',)
error_messages = {
'title': {
'required': "Enter a Shop name",
},
'company_name': {
'required': "Enter a Company name",
}
}
보기
def signup_shop(request):
if request.POST:
form = SignUpShopForm(request.POST)
if form.is_valid():
account = form.save(commit=False)
account.user = request.user
account.save()
return HttpResponseRedirect('/account/updated/')
else:
form = SignUpShopForm(data=request.POST)
return render_to_response('register_shop.html', { 'form':form }, context_instance=RequestContext(request))
else:
return render_to_response('register_shop.html', context_instance=RequestContext(request))
이 문제를 어떻게 해결할 수 있습니까?
https://pypi.python.org/pypi/django-autoslug를 시도한 적은 없지만이 방법이 도움이 될 수도 있습니다. 나는 unique_slugify가 꽤 단순한 방법이라는 것을 보증 할 수있다. –
도움이 되었다면 언제든지 답변으로 표시하십시오.) –