【问题标题】:Business Logic Between 2+ Models in Django rest FrameworkDjango rest框架中2+模型之间的业务逻辑
【发布时间】:2020-05-08 20:45:22
【问题描述】:

我已经阅读了很多关于此的内容,但我仍然无法深入了解如何实现它。我是 Python/Django 编程的新手,我正在使用 DRF+PostgreSQL 制作应用程序。

一切都好,我正在做基本的 post/get 操作,它们基本上按原样返回模型,之间没有业务逻辑或数据处理。

我现在的复杂情况是我需要用业务逻辑构建一个“自定义响应”,而我不知道如何去做或在哪里实现它,例如,我有这些模型:

class Parking(models.Model):
address = models.ForeignKey(Adress, on_delete=models.CASCADE, null=False, related_name='address')
price = models.DecimalField(max_digits=4, decimal_places=2, null=True, blank=True)

class ParkingLot(models.Model):        
    parking = models.ForeignKey(Parking, on_delete=models.CASCADE, null=False, related_name='parkinglots')
    floor = models.IntegerField(null=False)

class ParkingAvailability(models.Model):
    parkinglot = models.ForeignKey(ParkingLot, on_delete=models.CASCADE, null=False, related_name='availability')
    available = models.BooleanField(null=False, blank=False)

如果我返回停车位,我会在响应中获得所有其他模型(停车位和可用性),这很好。现在,我想返回停车场的地址,但只是满足 x 条件的 ParkingLots 总数,例如:楼层为 4 且可用的停车场数量。

  1. 我应该在哪里实现这个?我读过有关实现这些类型业务条件的服务或管理器文件,但有人说这不是一个好主意。
  2. 我应该如何实现它?我必须对这些模型进行查询,以便(例如)获得一个停车场的停车场。

【问题讨论】:

    标签: django python-3.x django-models django-rest-framework


    【解决方案1】:

    创建一个名为 views.py 的文件,您将在其中放置业务逻辑和一个名为 urls.py 的文件,您将在其中定义将重定向到逻辑的不同 url写在 views.py 文件中。

    【讨论】:

    猜你喜欢
    • 2015-07-23
    • 2019-02-12
    • 2021-04-10
    • 2016-06-01
    • 2011-04-15
    • 2019-09-03
    • 1970-01-01
    • 2016-06-05
    • 2013-09-14
    相关资源
    最近更新 更多