第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何更改過(guò)濾器查詢集取決于用戶

如何更改過(guò)濾器查詢集取決于用戶

瀟湘沐 2022-10-06 18:46:05
我正在使用django-filter,我有兩個(gè)模型CustomUser和Shop. 如何更改過(guò)濾器選擇查詢集以便用戶(request.user)只能過(guò)濾他的商店?用戶class CustomUser(AbstractBaseUser, PermissionsMixin):    shop = models.ManyToManyField(Shop, blank=True, related_name='custom_user')店鋪class Shop(models.Model):    address = models.CharField(_('Address'), unique=True, max_length=64, blank=False, null=False, db_index=True)過(guò)濾器.pyshops = Shop.objects.filter(is_active=True)SHOP_CHOICES = [('All', 'All')]for x in shops:    SHOP_CHOICES.append((x.address, x))SHOP_CHOICES = tuple(SHOP_CHOICES)class ShopFilter(django_filters.FilterSet):    address = django_filters.MultipleChoiceFilter(choices=SHOP_CHOICES)    class Meta:        model = Shop        fields = ['address']視圖.pyf = ShopFilter(request.GET)
查看完整描述

1 回答

?
尚方寶劍之說(shuō)

TA貢獻(xiàn)1788條經(jīng)驗(yàn) 獲得超4個(gè)贊

qs您可以在使用該方法返回之前過(guò)濾查詢集。

請(qǐng)參閱過(guò)濾主要的 `qs。

所以在你的情況下,你應(yīng)該能夠說(shuō):

@property

def qs(self):

    parent = super().qs

    owner = getattr(self.request, 'user', None)


    return parent.filter(custom_user=owner)

尚未對(duì)此進(jìn)行測(cè)試,但如果您想對(duì)查詢進(jìn)行任何修改,這絕對(duì)是一種方法。


查看完整回答
反對(duì) 回復(fù) 2022-10-06
  • 1 回答
  • 0 關(guān)注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)