УНИКАЛЬНОЕ ограничение не выполнено (форма модели django) - PullRequest
0 голосов
/ 18 октября 2018

я пытаюсь ОБНОВИТЬ определенные поля экземпляра модели (не поля PK), например модель блога, используя входные данные ModelForm от пользователя

class Post(models.Model):

STATUS_CHOICES = [
    ('draft','Draft'),
    ('published','Published')
]

postId      = models.AutoField(primary_key=True)
title       = models.CharField(max_length=50,unique=True)  
slug        = models.SlugField(max_length=50)  
body        = models.TextField()
status      = models.CharField(max_length=20,choices=STATUS_CHOICES,default='draft')
date        = models.DateField(auto_now_add=True)

-----------------------------------------------------------------------
class PostForm(forms.ModelForm):
class Meta:
    model = Post
    fields = ['title','body','status']
-----------------------------------------------------------------------

def edit(request,slug):

template = 'blog/post_edit.html'
post = get_object_or_404(Post,slug=slug)
form = PostForm(request.POST or None,instance=post)

if request.method == 'POST':

    if form.is_valid():
        form.save()      

return render(request,template,{'form':form})  

проблема, которую я вижу, состоит в том, что БДпытаюсь вставить новое значение с тем же postId PK!

Я также пытался использовать cleaned_data в одном и том же экземпляре сообщения и всегда получал одну и ту же ошибку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...