2011-01-21 76 views
0

可能重複:
Django forms request.user的ModelForm中捕獲的Django用戶保存()

我想在保存的ModelForm更新日誌記錄模式,重寫的save()方法ModelForm。
我的問題是,當填充日誌時,我需要添加發布表單的用戶的用戶名,並且此時request.user不可用(這是正常的,我在ModelForm save()方法...)。

除了添加隱藏的輸入以識別POST的作者之外,是否有任何方法可以訪問此值?

+0

@anand:你搖滾的人,謝謝 – 2011-01-22 21:33:50

回答

0

你可以從你的視圖功能來做到這一點。

def updateModel(request) 
    if request.method == 'POST': 
     form = MyForm(requst.POST) 
     if form.is_valid(): 
      #do your logging here 
      #log(request.user, "updated model") 
      form.save() 

你可能有這樣做的唯一的問題是,如果你有使用form.save()多個視圖,那麼你需要永遠記住登錄它。

+0

是的,這就是我現在正在做的,但治療很長,我想把它放到ModelForm中,以便能夠在其他視圖中使用它... – 2011-01-21 17:57:11

相關問題