2013-02-23 63 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() 
相关问题