首页 > 解决方案 > django 返回的对象比它应该的多

问题描述

我的问题与获取模型的一个实例有关。我给出的过滤条件是唯一的,我应该只收到一个实例。它返回 7 (全部)。

模型:

class Movie_dates(models.Model): #// signals appended - Creates this model straight after new Movie has been added
    main_movie = models.ForeignKey(Movies, on_delete=models.CASCADE)
    date = models.DateField(auto_now_add=False)
    time = models.ManyToManyField(Hours)

此模型在创建主模型后自动创建 (x7)。日期字段递增 datetime.now() + timedelta.days(i)

还有我的看法:

if request.session.get("user_choice"):
        user_choice = request.session.pop("user_choice")
        movie_date = user_choice["date"]
        movie_hour = user_choice["hour"]

        movie = Movies.objects.get(pk=pk)
        dates = Movie_dates.objects.get(main_movie=movie, date=datetime.strptime(str(movie_date), "%Y-%M-%d").date())

user_choice 内容在我的视图中可见,并且肯定已转换为日期格式。我仍然收到所有对象,而不是唯一提供特定日期的对象。感谢您的帮助。

问题解决了。我在我的代码中改变了一些东西并且工作了:)

标签: pythondjango

解决方案


推荐阅读