在cet_or_create方法中添加manytomany字段查询

Add manytomany field query in cet_or_create method

def create(self, validated_data):
        employer = User.objects.get(id=self.context.get('employer'))
        candidate = User.objects.get(id=self.context.get('candidate_id'))
        report_details_id = ReportDetails.objects.filter(
            id__in=self.context.get('report_details_id'))
        (report_candidate, created) = ReportCandidate.objects.get_or_create(
            reported_by=employer.id, candidate_id=candidate.id,report_details_id=report_details_id)
        return report_candidate

这里的 report_details_id 是一个多对多字段查询。如何在 get_or_create 方法中应用其中的每个数据?

The QuerySet value for an exact lookup must be limited to one result using slicing.

我从上面的代码中得到这个错误。 提前致谢。

report_details_id 包含对象列表,这就是您出现上述错误的原因。要解决您只需要使用 in 运算符的问题。

赞 :-

   reported_by=employer.id, candidate_id=candidate.id,report_details_id__in=report_details_id)