django頁面form添加和編輯

文章轉載于 https://my.oschina.net/u/2723480/blog/702874

現在要實現一個form的添加和編輯,就是說對一個數據庫表的操作

def log(request,id=0):
    assert isinstance(request, HttpRequest)
    if request.method == 'POST':
        form = app.forms.LogForm(request.POST)
        if form.is_valid():
            id = form.data['id']
            if id:
                model = app.models.ChangeLog.objects.get(id=id)
            else:
                model = app.models.ChangeLog()
            model.serial_number = form.cleaned_data['serial_number']
            model.name = form.cleaned_data['name']
            model.type = form.cleaned_data['type']
            model.remark = form.cleaned_data['remark']
            model.save()            
        id = 0
    else:
        if id:
            form = app.forms.LogForm(instance = app.models.ChangeLog.objects.get(id=id))
        else:
            form = app.forms.LogForm()
    return render(request,'app/log.html',{
            'title': '變更記錄',
            'form': form, #獲得表單對象
            'data':app.models.ChangeLog.objects.all(),
            'id': id
            })

重點關注 form = app.forms.LogForm(instance = app.models.ChangeLog.objects.get(id=id)),通過模型實例化表單,可以實現文章再編輯

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容