我使用的是Django 1.4,并且我有一个many2any字段,因此在创建管理站点时,我希望将此字段添加为内联字段,以下是一些代码:

class SummaryInline(admin.TabularInline):
    model = ParserError.summaries.through


class MyClassAdmin(admin.ModelAdmin):
    list_display = ('classifier', 'name', 'err_count', 'supported')
    fields = ('classifier', 'name', 'err_count', 'err_classifier', 'supported')
    inlines = (SummaryInline,)
    readonly_fields = ('classifier', 'err_count')

所以我的问题是,如何使内联字段为只读?

推荐答案

经过一段时间的努力,我找到了this answer的名字,所以我判断了self.opts.local_fields的名字,找到了中间那张桌子的名字,并将它加到了readonly_fields,将can_delete设置为False.

class SummaryInline(admin.TabularInline):
    model = ParserError.summaries.through
    readonly_fields = ('myclasssummary',)
    can_delete = False

很简单,但是花了我一段时间,所以我想把它添加到这里是个好主意.

Django相关问答推荐

如果密码在Django中未被散列,则对其进行散列

Django ORM多表一对多关系问题

RDBMS多对多关系Django

如何计算 Django 模型中特定对象的数量?

是否可以在 Django 中重命名应用程序的组名?

如何根据查询集中的条件返回多个聚合?

django - 表单没有错误,但 form.is_valid() 没有验证

Django ORM 和锁定表

获取 Django 中的缓存键列表

NoReverseMatch 错误

如何在终端中切换 Python 版本?

目前使用 Django Evolution,South是否更好,值得切换?

Django - 如何从模型中 Select 特定列?

如何在 Django 中向 ChoiceField 添加class?

jinja2模板引擎中的这个-是做什么的?

Celery 和 Django 简单示例

模拟 Django 查询集以测试采用查询集的函数

在 Django Admin 中过滤多对多框

如何在 Django 中使用动态外键?

django/文件上传权限