python - 在 admin django 1.6 中注册抽象模型

标签 python django python-3.x django-models django-admin

搜索了一段时间后,我没有找到任何明确的解决方案

文件:models.py

class BaseModel(models.Model):
    created_date = models.DateTimeField(auto_now_add=True)
    modified_date = models.DateTimeField(auto_now=True)

    class Meta:
        abstract = True


class Company(BaseModel):
    company_name = models.CharField(max_length=50, unique=True)

    def __str__(self):
        return self.company_name

文件:models.py

from django.contrib import admin
from .models import Company

class CompanyAdmin(admin.ModelAdmin):
    pass

admin.site.register(Company, CompanyAdmin)

我在这里尝试了解决方案:Django admin model Inheritance is it possible?但没有任何作用,管理员只显示公司名称

最佳答案

这些字段未在管理中显示的原因是 auto_nowauto_now。您需要做的是将它们显式添加为只读字段:

admin.py

from django.contrib import admin
from .models import Company

class CompanyAdmin(admin.ModelAdmin):
    readonly_fields = ('created_date', 'modified_date')

admin.site.register(Company, CompanyAdmin)

关于python - 在 admin django 1.6 中注册抽象模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24026203/

相关文章:

python - 访问对象的对象属性数组会在 python 中给出属性错误

python - 信号问题 - 插槽,aboutToQuit()

python - 我无法在 Ubuntu 上初始化 Google Cloud SDK

python - 基本服务器资源上的 Django 缓存 : Caching thousands of queries for a long time,

python - 计算 5 年的学费增长

python - Django - 不同的行/对象按日期/日期从日期时间字段区分

python - NoReverseMatch Django 休息框架

django - 查询字段值 - 返回未定义的全局名称

django - 如何使用 brew 安装 Django?

python - 为什么比较两个分别包含一个 NumPy 对象的元组会报错?