如何在您的应用程序中使用django软件包?

时间:2018-06-26 10:39:02

标签: python django django-views package

我正在制作汽车预订系统。和Web开发的初学者,这是我的第一个django项目。我已经介绍过民意调查应用程序教程。我想建立一个预订系统。我想在我的django应用程序中使用此软件包 https://github.com/bitlabstudio/django-booking 。我想使用此套餐功能预订汽车。我该如何附加它并使它与我的应用一起使用。

我不知道django软件包。我如何使用此套餐进行预订。关于预订我应该写些什么,在哪里写。我已经安装了预订,并涵盖了自述文件中的所有内容。但是如何使用我的应用程序初始化。例如,我想使用那里的预订系统来预订我的汽车

Views.py

    class CarDetailView(DetailView):
       context_object_name = 'car_details'
       model = models.Car
       template_name = 'buggy_app/car_detail.html'

    class BookingView(FormView):
         template_name = 'buggy_app/booking.html'
         form_class = BookingForm
         models = Booking
         def form_valid(self, form):
           form.save()
           return super(BookingView, self).form_valid(form)

        success_url = reverse_lazy('index')

        def get_context_data(self, **kwargs):

                try:
                  kwargs['car'] = Car.objects.get(id=self.request.GET.get('car', ''))
               except (Car.DoesNotExist, ValueError):
                   kwargs['car'] = None

              return super(BookingView, self).get_context_data(**kwargs) 

         def get_initial(self):
            initial = super(BookingView, self).get_initial()
            if 'car' in self.request.GET:
                try:
                   initial['book_car'] = Car.objects.get(id=self.request.GET['car'])
                except (Car.DoesNotExist, ValueError):
                     pass
                return initial

Models.py

class Booking(models.Model):

  booking_name = models.CharField(max_length=240, null=False)
  customer_name = models.ForeignKey(Customer, on_delete=models.CASCADE, related_name='book_customers' )
  book_car = models.ForeignKey(Car, on_delete=models.CASCADE, related_name='book_car')
  booking_start_date = models.DateTimeField(auto_now_add=True, blank=False)
  booking_end_date = models.DateTimeField(blank=True, null=True)
  rental_price = models.IntegerField(blank=False, null=False)
  times_pick = models.TimeField(blank=True)
  is_approved = models.BooleanField(default=False)

  def __str__(self):
      return self.booking_name

  def get_absolute_url(self):
      return reverse("buggy_app:detail",kwargs={'pk':self.pk})

0 个答案:

没有答案