我如何在JavaScript中使用Django模板标签

时间:2019-10-10 20:32:38

标签: javascript html css django django-templates

我正在使用一个名为FullCalendar的库,我希望我的模型数据位于javascript中的模板中,而我已经看到很多人这样做。但是由于某些原因,模板标记不会注册为模板标记,并且我得到了一个错误。

<script>
document.addEventListener('DOMContentLoaded', function() {
var Calendar = FullCalendar.Calendar;
var Draggable = FullCalendarInteraction.Draggable;

var containerEl = document.getElementById('external-events');
var calendarEl = document.getElementById('calendar');
var checkbox = document.getElementById('drop-remove');



// initialize the calendar
// -----------------------------------------------------------------

var calendar = new Calendar(calendarEl,  {
  plugins: [ 'interaction', 'dayGrid', 'timeGrid', 'bootstrap', 'interaction' ],
  themeSystem: 'bootstrap',
  selectable: true,
  select: function(info) {

    var titleStr = prompt('Enter Title');
        var date = new Date(info.startStr + 'T00:00:00'); // will be in local time

        if (!isNaN(date.valueOf())) { // valid?
          calendar.addEvent({
            title: titleStr,
            start: date,
            allDay: true,
          });
        } 
  },
  locale: "sv",
  header: {
    left: 'prev,next today',
    right: 'dayGridMonth,timeGridWeek,timeGridDay'
  },
  customButtons: {

  },
  eventClick: function(info) {
    alert('Event: ' + info.event.title);

  },
  editable: true,
  droppable: true, 
  events: [

  {% for event in events %}
                    {
                        title: "{{ event.name}}",
                        start: '{{ event.start|date:"Y-m-d" }}',
                        end: '{{ event.end|date:"Y-m-d" }}',

                    },
                {% endfor %}

  ],

 });

  calendar.render();
  });

  </script>

不起作用的部分是{%事件中的事件%}循环,视图将模型数据解析到模板中。例如,出于某种原因,我可以在html标签中显示数据,但不能在javascript中显示数据?有人帮忙吗?

这些帖子做同样的事情,似乎很有效 FullCalendar in Django http://qaru.site/questions/2365182/fullcalendar-in-django

1 个答案:

答案 0 :(得分:0)

问题有点老了,但我还是会回答。

这对我有用。

events: [
          {% for event in events %}
             {
                  title: "{{ event.event_name}}",
                  start: '{{ event.start_date|date:"Y-m-d" }}T{{ i.start_date|time:"H:i"}}',
                  end: '{{ event.end_date|date:"Y-m-d" }}T{{ event.end_date|time:"H:i" }}',
              },
          {% endfor %}
        ]

我们可以在views.py中看到您的代码吗?谢谢