从 sql 转换为 Django ORM

Convert from sql to Django ORM

请帮帮我!如何将此 SELECT hotel_id FROM hotelrooms GROUP BY hotel_id HAVING COUNT(room_id) < 20 转换为 Django ORM?

型号:

class hotelrooms(models.Model):
  room_id = models.IntegerField()
  hotel_id = models.IntegerField()
  price = models.IntegerField()

您可以查询:

HotelRoom.objects.values('hotel_id').annotate(
    nhotel=Count('room_id')
).filter(<b>nhotel__lt=20</b>).order_by('hotel_id')

话虽如此,看起来这些应该是 **ForeignKey**s [Django-doc]ForeignKeys 引用另一个模型,因此可以强制执行引用完整性。