【问题标题】:Django admin foreign key field cause performance issueDjango admin 外键字段导致性能问题
【发布时间】:2017-05-18 03:06:59
【问题描述】:

我有一个Question 模型和一个Solution 模型。

class Solution(models.Model):
    user = models.ForeignKey('exam.Users', on_delete=models.CASCADE)
    question = models.ForeignKey(Question, on_delete=models.CASCADE)
    solution = RichTextField()

在 Django admin 中,我在 Solution 部分显示 Question_text。

@admin.register(Solution)
class SolutionAdmin(admin.ModelAdmin):
    def get_ori_q(self, obj):
        se = obj.question
        return se.question

对于这个Question_text字段,见下图。

但我不想编辑它,或者让它可选择,因为如果我单击它会花费大量时间来显示大量项目。

如何将其设为只读并仅显示一项,而不是显示Question 表中的所有项目?

【问题讨论】:

    标签: python django django-admin


    【解决方案1】:

    这应该可以解决问题

    @admin.register(Solution)
    class SolutionAdmin(admin.ModelAdmin):
        readonly_fields = ('question',)
        def get_ori_q(self, obj):
            se = obj.question
            return se.question
    

    【讨论】:

    • 现在只读字段在页面底部,是否可以在之前的相同位置显示只读字段?
    • 据我所知,这不是一种简单的编码方式。您可能必须去扩展管理模板才能手动完成。
    • 再次感谢您,我只是尝试使用fieldset 显示它,似乎还可以。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-11
    • 1970-01-01
    • 1970-01-01
    • 2012-02-10
    • 2012-04-28
    • 2012-02-18
    • 2013-01-20
    相关资源
    最近更新 更多