【问题标题】:Optimizing ModelChoiceField query in django Admin (AppEngine)在 django Admin (AppEngine) 中优化 ModelChoiceField 查询
【发布时间】:2011-01-07 19:11:39
【问题描述】:

我有两个模型:Activity 和 Place。 Activity 模型具有 Place 模型的 ReferenceProperty。

在 Place 表开始增长之前,这一直运行良好,现在 尝试通过 django admin 编辑 Activity 时出现内存错误 从谷歌(如果我从活动中删除该字段不会发生 管理员的字段集)

用于编辑 RefrenceProperty 的小部件使用 Place.all() 来获取 可能的值。 由于 Activity 和 Place 都被城市财产分割,我想 将小部件的选择查询从 Place.all() 优化为 相关地点,例如 Place.all().filter("city =", )

我找不到覆盖文档中的查询的方法,我是 想知道以上是否可能?如果有,怎么做?

【问题讨论】:

    标签: django google-app-engine django-admin app-engine-patch


    【解决方案1】:

    通过覆盖管理表单来优化查询:

    class ActivityAdminForm(forms.ModelForm):
        def __init__(self, *args, **kwargs):
            super(ActivityAdminForm, self).__init__(*args, **kwargs)        
            self.fields['place'].queryset = <... my query ...>
    
    
    class ActivityAdmin(admin.ModelAdmin):
        form = ActivityAdminForm
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-15
      • 2017-04-14
      • 2011-10-08
      • 2012-03-19
      • 1970-01-01
      • 1970-01-01
      • 2016-12-23
      • 1970-01-01
      相关资源
      最近更新 更多