django admin添加数据自动记录user到表中的实现方法

yipeiwu_com6年前Python基础

1.需求:在后台添加一条数据的同时要把添加者记录到表中。

2.models.py

class Setting(models.Model): 
  ...      
  user = models.CharField(max_length=50, blank=True, help_text=u"添加者")
  ...

3.admin.py

@register(Setting)
class SettingAdmin(admin.ModelAdmin):
  list_display = ("pk", "user", "other_field")
  def save_model(self, request, obj, form, change):
    obj.user = request.user
    obj.save()
  readonly_fields = ("user", )

以上这篇django admin添加数据自动记录user到表中的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用python开发vim插件及心得分享

使用python开发vim插件及心得分享

vim有各种强大的插件,这不仅归功于其提供的用来编写插件的脚本语言vimL,还得益于它良好的接口实现,从而支持python等语言编写插件。当vim编译时带有+python特性时就能使用p...

python数据结构之图深度优先和广度优先实例详解

本文实例讲述了python数据结构之图深度优先和广度优先用法。分享给大家供大家参考。具体如下: 首先有一个概念:回溯   回溯法(探索与回溯法)是一种选优搜索法,按选优条件向前搜索,以达...

浅谈python写入大量文件的问题

今天准备把几个txt文件合并成一个文件时,用f.write方法写入时,发现程序执行完了,本应该十万行左右的txt记录,实际上只被写入了4k多行。 网上查了是因为程序执行速度太快,以至于读...

Django rest framework实现分页的示例

Django rest framework实现分页的示例

第一种分页PageNumberPagination 基本使用 (1)urls.py urlpatterns = [ re_path('(?P<version>...

解决Django后台ManyToManyField显示成Object的问题

解决Django后台ManyToManyField显示成Object的问题

如果一个模型里包含了ManyToManyField,在admin后台可能会显示成object,例如 解决方法: 在定义这个类的时候,加多一个函数 实际效果: 以上这篇解决Djang...