Django-de Modifier et de mettre à jour les données existantes dans la base de données

models.py est

from django.db import models

    class Book(models.Model):

        book_id=models.AutoField(primary_key=True,unique=True)
        book_name=models.CharField(max_length=30)
        author_name=models.CharField(max_length=30)
        publisher_name=models.CharField(max_length=40)

        class Meta:
            db_table = u'Book'

        def __unicode__(self):
            return "%d %s %s %s" % (self.book_id,self.book_name, self.author_name,self.publisher_name)

forms.py est

from django import forms
from django.forms import ModelForm
from myapp.models import Book


class BookForm(ModelForm):

    class Meta:
        model = Book

        fields=['book_id','book_name','author_name','publisher_name']

mon views.py est

def editbook(request,book_id):

    queryset = Book.objects.filter(book_id=book_id)
    if request.POST:
        form=BookForm(request.POST,instance=queryset)
        if form.is_valid():
            form.save()
            return redirect('index')
    else:
        form=BookForm(instance=queryset)
        template = 'editbook.html'
        book = { 'form':form }
    return render_to_response(template, book , RequestContext(request)) 

J'ai besoin de modifier et de mettre à jour le déjà existantes de la ligne de données dans la base de données.Je suppose que la leur est un problème dans views.py. Donc, je ne suis pas sûr que mon views.py est droit. Veuillez vérifier et me dire si tout problème et comment procéder.

Grâce

OriginalL'auteur user2086641 | 2013-03-06