Я создаю пункт проката велосипедов.
интерфейс: пользователь выбирает даты начала и окончания и получает все доступные велосипеды в виде списка, велосипеды с категориями и соответствующей ценой.
Цена: цена рассчитана на 2 условиях. Категория и продолжительность транспортного средства. (Поскольку цена указана с указанием продолжительности.
1-3 дня = 145 $ спортивный
1-3 дня = 145 $ самокат
4-7 дней = 2004 sporty
4-7 дней = самокат 2004 года c.
Продолжительность может быть достигнута только с выбранных дат из формы во внешнем интерфейсе, которая конвертируется в дни.
Мне нужно передать эти дни как продолжительность , чтобы получить соответствующую цену и отобразить ее в каждой категории соответственно в виде списка.
MODELS.PY
class VehicleCategory:
@property
def price(self, duration):
for item in VehiclePrice.objects.all():
If item.vehicle_category.title == self.title and (duration >= item.slab.start and duration <= item.slab.end):
return item.net_price
VIEWS.PY
class HomeView (ListView):
template_name = 'app/home.html'
def get(self, request):
if request.method == "GET":
start_date = request.GET.get('start_date')
end_date = request.GET.get('end_date')
if start_date and end_date:
start_date = datetime.strptime(start_date, "%m/%d/%Y").date()
end_date = datetime.strptime(end_date, "%m/%d/%Y").date()
duration = (end_date - start_date).days +1
vehiclecategory= VehicleCategory.objects.all()
context = {
'vehiclecategory1': vehiclecategory.filter(main_category= 'E-Cycle'),
'vehiclecategory2': vehiclecategory.filter(main_category= 'E-Scooter'),
'form':CartQuantityForm(),
'dateform': DateForm()
}
return render(request, self.template_name, context )
здесь я получаю продолжительность, как я могу передать это в параметр цены метода модели и заставить вышеуказанный Queryset работать ???? "" "