Python 使用Django filter()时的动态键

Python 使用Django filter()时的动态键,python,django,django-models,Python,Django,Django Models,我创建了一个接受对象的函数,我想做的是能够通过这个对象过滤并删除queryset结果 我尝试了这个方法,但它不起作用,因为model\u obj.\uu class\uuuuuuu.\u meta.model\u name查找单词的名称one model,例如Profile,但是如果我有一个名为:ProfileLogin,结果将是ProfileLogin,但它应该是Profile\u login def delete_profile_from_obj(obj): filter_by

我创建了一个接受对象的函数,我想做的是能够通过这个对象过滤并删除queryset结果

我尝试了这个方法,但它不起作用,因为
model\u obj.\uu class\uuuuuuu.\u meta.model\u name
查找单词的名称one model,例如
Profile
,但是如果我有一个名为:
ProfileLogin
,结果将是
ProfileLogin
,但它应该是
Profile\u login

def delete_profile_from_obj(obj):

     filter_by = model_obj.__class__._meta.model_name

     kwargs = {
         filter_by: obj  
     }


     profiles = Profile.objects.filter(**kwargs)
     profiles.delete()


Profile
与传递到函数中的
obj
有一对多关系。

Profile模型有N个字段,其中包含N个模型的可空链接(非FK),我是否正确?请描述你的初衷/任务/你为什么这么做。这是否回答了你的问题?