我目前正在try 使用Django ORM查询Recipe
模型的成分.
class Recipe(models.Model):
account = models.ForeignKey(CustomUser, on_delete=models.CASCADE, null=True, blank=True)
name = models.TextField(null=True, blank=True)
class RecipeIngredients(models.Model):
recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE, null=True)
ingredient = models.TextField(null=True, blank=True)
到目前为止我所知道的是
ingredients = ["eggs", "bacon", "potato"]
recipes = Recipe.objects.filter(
recipeingredients__ingredient__in=ingredients
).alias(
ningredient=Count('recipeingredients')
).filter(
ningredient__gte=len(ingredients)
)
根据我对this answer的理解,这将退还所有只包含"鸡蛋"、"培根"和"土豆"的物品,但不包括鸡蛋或炒蛋.是否需要调整此选项,使其搜索所有包含成分的项目,并且不含case?