2013-02-23 75 views
1

我正在使用遺留數據庫,所有表中都有'adduid'和'moduid'字段。這些字段是varchar(64)。將當前用戶名添加到Django模型中的'用戶'字段

這些郵票記錄與實際 userid保存和修改時。當然,在使用django時,這些字段會被django db用戶填充。

我想要的是一種用登錄用戶填充這些字段的方法;最好在模型定義中。

我該怎麼辦? (我見過的大多數解決方案都依賴於使用用戶表的外鍵;但是我們需要該字段中的用戶名的實際文本 - 而不是fk)。

在此先感謝 - 帕特里克

回答

1

我不認爲你可以在模型級別爲用戶做到這一點是不是一個型號的保存方法進行訪問。模型可以在沒有任何用戶介入的情況下被保存(例如通過諸如芹菜之類的任務管理應用程序)。但是,用戶可以在傳遞給視圖的HttpRequest對象上使用,因此您可以在視圖中執行此操作。

def your_view(request): 
    # get your object 
    obj.modified = request.user.username 
    obj.save() 

還有一個save_model功能上Django的ModelAdmin你可以重寫。類似於 -

def save_model(self, request, obj, form, change): 
    obj.modified = request.user.username 
    obj.save() 
相關問題