Как я могу передать значение из шаблона Django в представление - PullRequest
0 голосов
/ 22 апреля 2019

Мне нужно передать DateRange из шаблона в представление, чтобы график мог быть отфильтрован по этому диапазону, но я не могу получить значение DateRange.

Я работаю с Django 2, и у меня есть время, чтобы решить эту проблему.

Может кто-нибудь дать подсказку ???

<div class="card-header">
    <form class="form-group mb-xl-0 float-right" method="get">
    <button id="send" name="button" >send</button>                            
        <div id="reportrange" class="overflow-hidden form-control" name="ref_date2">
            <input class="far fa-calendar" name="ref_date">
            <span></span> <i class="fas fa-caret-down" name="ref_date3"></i>
        </div>
    </form>                        
    <h5 class="card-title">Eficiencia por Rango de Horas</h5>

</div>

<script>
     var send = document.getElementById("send");
     send.addEventListener("click", function()
     {
         var startDate = $('#reportrange').data('daterangepicker').startDate;
         var content = encodeURIComponent(document.getElementByName("ref_date").value);
         var endDate = "HOLA";
     }
     function myFunction() {
         var d = 100

         console.log(d);
                    }
</script>   
<script>

            document.addEventListener("DOMContentLoaded", function(event) {

                var start = moment().subtract(29, 'days');
                var end = moment();

                function cb(start, end) {
                    $('#reportrange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
                }
                $('#reportrange').daterangepicker({
                    startDate: start,
                    endDate: end,
                    ranges: {
                        'Today': [moment(), moment()],
                        'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
                        'Last 7 Days': [moment().subtract(6, 'days'), moment()],
                        'Last 30 Days': [moment().subtract(29, 'days'), moment()],
                        'This Month': [moment().startOf('month'), moment().endOf('month')],
                        'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
                    }
                }, cb);
                cb(start, end);
            });
        </script>

Вид: Python

class RevPashPageView(TemplateView):
    template_name = "softrest/revPash.html"

    def get(self, request, *args, **kwargs):
        content = request.GET.get('content', None)
        print("TEXTO - " + str(content))


        return render(request, self.template_name, {'output':output})

1 Ответ

0 голосов
/ 22 апреля 2019

Ключ переменной в request.GET dict будет name поля ввода.

class RevPashPageView(TemplateView):
    template_name = "softrest/revPash.html"

    def get(self, request, *args, **kwargs):
        content = request.GET.get('content', None)
        print("TEXTO - " + str(content))

        date_range = request.GET.get("ref_date", None)  # This is your variable

        return render(request, self.template_name, {'output':output})


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...