python - 了解 Django 基于类的 View 混合

标签 python django

<分区>

Django 基于类的 View 中的 mixin 是什么?如何开始使用它以及何时使用?任何人都可以提供实际的例子让我理解它吗?

最佳答案

你读过https://docs.djangoproject.com/en/dev/topics/class-based-views/mixins/吗? ?

我不确定我的示例是否相关,但它是我经常使用的混合...

class OwnedObjectsMixin(object):

    def form_valid(self, form):
        form.instance.owner = self.request.user
        form.full_clean()
        if form.is_valid():
            return super(OwnedObjectsMixin, self).form_valid(form)
        else:
            return super(OwnedObjectsMixin, self).form_invalid(form)

    def get_queryset(self):
        self.user_id = self.request.user.id
        return self.model.objects.filter(owner=self.user_id)


class MyModelList(OwnedObjectsMixin, ListView):
    model = myModel

关于python - 了解 Django 基于类的 View 混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22125445/

相关文章:

python - Django - 如何按特定顺序对对象进行排序?

python - Django - 从 HTML 生成图像

django - OneToOne Model 两种方式删除Cascade

python - 移动 python 2.6 分发/开发环境?

python - 将 Pandas 数据框更改为平面格式

python - 如何在 Django 测试中强制交易中的竞争条件?

python - Django - 登录到远程登录页面

Python 和 Excel : Overwriting an existing file always prompts, 尽管 XlSaveConflictResolution 值

python - 如果项目出现不止一次,则删除列表中所有出现的项目

python - 如何改变 ndb 重复属性?