【问题标题】:How can I filter objects using django views?如何使用 django 视图过滤对象?
【发布时间】:2017-02-18 19:43:15
【问题描述】:

我正在使用此通用视图,并且我想仅针对某些类型过滤campaign_type。 我试图使用 queryset= CampaignType.objects.filter(type='social') 但它不起作用。任何线索? 请注意,过滤器适用于与 CampaignType 的多对多关系,而我的模型是 Campaign。

 class CCtypeUpdate(generic.UpdateView):
     model = Campaign
     fields = ['campaign_type']
     template_name = 'campaign/campaign.html'
     success_url = '../../'

【问题讨论】:

  • 更新视图用于一个对象。所以使用过滤器你想要什么?
  • 我有两个模型 Campaign 和 CampaignType 所以我想更新/添加到 Campaign 某些我不想全部显示的类型
  • 能不能发完整的CCtypeUpdate让大家知道你有没有用过什么表格
  • 好吧CCtypeUpdate

标签: django django-models django-forms django-templates django-views


【解决方案1】:

试试这个

class CCtypeUpdate(generic.UpdateView):
    model = Campaign
    fields = ['campaign_type']
    ......
    #rest of your code 
    def get_form(self, form_class=None):    
        form = super(CCtypeUpdate, self).get_form(form_class)
        form.fields["campaign_type"].queryset = CampaignType.objects.filter(type='social')
        return form

【讨论】:

    猜你喜欢
    • 2020-11-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-05
    • 2015-11-06
    • 2016-03-10
    • 2019-04-26
    • 1970-01-01
    • 2013-11-14
    相关资源
    最近更新 更多