Добавить, если он еще не существует
Здравствуйте всем, я пытаюсь написать View Set API, который позволяет добавлять объект курса в список избранного, но перед добавлением проверять его, если пользователь уже добавил курс, не позволять ему добавлять его снова, а если пользователь не добавил, то позволить ему добавить его в список, но у меня нет идеи, как я могу сделать это с помощью View set my view
class AddtoMyCoursesView(viewsets.ModelViewSet):
serializer_class = MyCoursesListSerializer
def get_queryset(self, *args, **kwargs):
pk = self.request.POST.get('pk')
course = get_object_or_404(Courses, id=pk)
print(course)
course_list, _ = MyCoursesList.objects.filter(courses=course).exist()
print(course_list)
course_list.courses.add(course_list)
Моя модель -
class MyCoursesList(models.Model):
user = models.ForeignKey('accounts.User', on_delete=models.CASCADE, blank=True)
courses = models.ForeignKey(Courses, on_delete=models.CASCADE, blank=True,related_name='my_courses')
added_date = models.DateTimeField(auto_now_add=True)
teacher = models.ForeignKey(Teacher, on_delete=models.DO_NOTHING, default=1)
Так что же мне делать с моим кодом?
Для этого используйте Modelname.get_or_create().