使用Django管理站点自动填充created_by字段

h3.*_*h3. 21 python django django-models django-admin

我想使用Django管理界面来创建一个非常简单的Web应用程序,但我无法解决一个不应该难以解决的问题.

考虑以下:

class Contact(models.Model):
    name = models.CharField(max_length=250, blank=False)
    created_by = models.ForeignKey(User, blank=False)
Run Code Online (Sandbox Code Playgroud)

我找不到自动填充created_by字段并让Django管理员知道它的方法.我见过的大多数方法都意味着重载了Object的save方法并将其传递给请求用户.它们都需要构建自定义视图和/或表单.

最好在管理站点中创建新联系人的表单不应显示created_by字段(这很容易)并使用当前用户自动填充它(这似乎比它应该更难).

jsa*_*msa 27

http://code.djangoproject.com/wiki/CookBookNewformsAdminAndUser

涉及在ModelAdmin对象上实现保存方法.