Cómo editar los datos del modelo usando formularios Django.

Soy nuevo en Django, así que lo siento por mi pregunta de novato
Tengo un modelo y necesito permitir que el usuario edite los datos dentro de él usando formularios Django o de cualquier otra forma. introduzca la descripción de la imagen aquí

mire la imagen de arriba, quiero mostrar este formulario listo con los datos y dejar que el usuario lo actualice.
Cuál es la mejor manera de hacer esto ?

EDITAR: aquí está mi código views.py

def exam_Edit(request,examName,number=0): numner = int(number) number = int(number) questionNo = int(numner) Myexam = models.Exam.objects.get(name = examName) QuestionsAll = models.Question.objects.filter(exam = Myexam) myQeustion = Question.objects.filter(exam = Myexam)[nextQuestion] answer1 = models.Asnwers.objects.filter(question=myQeustion)[0] answer2 = models.Asnwers.objects.filter(question=myQeustion)[1] answer3 = models.Asnwers.objects.filter(question=myQeustion)[2] answer4 = models.Asnwers.objects.filter(question=myQeustion)[3] # HERE IS MY PROBLEM : the line below creates a form with a data but it doesn't save it to the save object form = QuestionsEditForm(initial = {'questionText':myQeustion.__unicode__() , 'firstChoiceText':answer1.__unicode__(),'secondChoiceText':answer2.__unicode__(),'thirdChoiceText':answer3.__unicode__(),'forthChoiceText':answer4.__unicode__()}) if request.method =='POST': #if post if form.is_valid(): questionText = form.cleaned_data['questionText'] Myexam = Exam.objects.get(name = examName) myQeustion.questionText = form.cleaned_data['questionText'] answer1.answerText = form.cleaned_data['firstChoiceText'] answer1.save() answer2.answerText = form.cleaned_data['secondChoiceText'] answer2.save() answer3.answerText = form.cleaned_data['thirdChoiceText'] answer3.save() answer4.answerText = form.cleaned_data['forthChoiceText'] answer4.save() variables = RequestContext(request, {'form':form,'examName':examName,'questionNo':str(nextQuestion)}) return render_to_response('exam_edit.html',variables) 

por favor ayuda

Suponiendo que está utilizando un ModelForm , use el argumento de palabra clave de instance y pase el modelo que está actualizando.

Por lo tanto, si tiene MyModel y MyModelForm (el último de los cuales debe extender django.forms.ModelForm ), su fragmento de código podría tener el siguiente aspecto:

 my_record = MyModel.objects.get(id=XXX) form = MyModelForm(instance=my_record) 

Y luego, cuando el usuario devuelve datos por POST:

 form = MyModelForm(request.POST, instance=my_record) 

Por cierto, la documentación de ModelForm está aquí: http://docs.djangoproject.com/en/1.8/topics/forms/modelforms/