Получение данных от родителей к детям - FE или BE, как?
Я изучаю Django и React. Я пытаюсь получить некоторые данные из Order в TranspOrder. Order -< TranspOrders
В модели Order (orders/model.py) у меня есть поле total_allowed_amount
и функция get_total_remaining_amount(self)
, которая вычисляет total_allowed_amount - total_consumed_amount
и возвращает результат.
В OrderDetailSerializer у меня есть поле total_remaining_amount
(source= "get_total_remaining_amount"
- я предполагаю, что это означает, что он получает dafa из этой функции).
Итак, во фронтенде у меня есть React компонент OrderDetails.js (Order), который отображает два поля total_allowed_amount
и total_remaining_amount
. Теперь мне нужно отобразить эти два поля также на TranspOrderDetails.js (TranspOrder), но я не могу найти способ сделать это. Даже не уверен, правильно ли это делать через back- или frontend. Это очень раздражает, так как кажется, что это очень базовая вещь.
Я пробовал писать функции в модели TranspOrder (transporder/models.py), чтобы перенести их в эту модель из Orders, чтобы затем получить к ним доступ из FE (я думаю, что создание одинаковых полей для них в этой модели не очень хорошая идея):
def get_order_total_allowed_amount(self):
if not self.order.total_allowed_amount:
return None
return self.order.total_allowed_amount
def get_order_total_remaining_amount(self):
if not Order.total_allowed_amount:
return None
return self.get_total_remaining_amount(Order)
Я также пытался импортировать их из OrderDetails.js в TranspOrderDetails.js, как например:
import { OrderDetails } from '../orders/components/OrderDetails';
const {
total_allowed_amount: totalAllowedAmount,
total_remaining_amount: totalRemainingAmount,
} = OrderDetails;