Python 如何创建一个模型,从其他模型总结,而不是保存到数据库中,但显示在管理页面?

Python 如何创建一个模型,从其他模型总结,而不是保存到数据库中,但显示在管理页面?,python,django,django-models,Python,Django,Django Models,我有一个问题:我需要在管理页面中创建一个表,该表汇总来自其他模型的数据,但它不是数据库中的实际模型 如何实现这一点?我假设您将使用现有模型来计算Summy。在模型中创建实例方法/属性(因为这将有助于计算模型的行级汇总)。对于管理端,您可以将ModelAdmin与您的模型(可能是a)一起使用,然后 模型实例方法/属性将用于计算行级汇总 class YourMainModel(models.Model): # Your Model code def instanceMethod(se

我有一个问题:我需要在管理页面中创建一个表,该表汇总来自其他模型的数据,但它不是数据库中的实际模型


如何实现这一点?

我假设您将使用现有模型来计算Summy。在模型中创建实例方法/属性(因为这将有助于计算模型的行级汇总)。对于管理端,您可以将ModelAdmin与您的模型(可能是a)一起使用,然后

模型实例方法/属性将用于计算行级汇总

class YourMainModel(models.Model):
    # Your Model code
    def instanceMethod(self)
        return some_summery_calculation_based_on_model_fields

    @property
    def instanceProperty(self)
        return some_summery_calculation_based_on_model_fields

class YourMainModelProxy(YourMainModel)
    class Meta:
        proxy=True
现在在admin.py中

class YourSummeryModelAdmin(admin.ModelAdmin):
    #Configure your model admin (Somewhat like this)
    model = YourMainModelProxy
    list_display = ['instanceMethod','instanceProperty'...]

    # Disable add permission 
    def has_add_permission(self, request):
        return False

    # Disable delete permission
    def has_delete_permission(self, request, obj=None):
        return False
我希望这会有所帮助