Django: укажите номер месяца и года в качестве параметра в шаблоне для использования в теге шаблона - PullRequest
1 голос
/ 28 октября 2010

Я начинающий Джанго.Я нашел этот фрагмент Django , чтобы показать простой календарь на моей веб-странице.Для функции требовалось 3 параметра, которые можно предоставить в шаблоне следующим образом:

{% load calendar_tag %}
<div>
<div>Calendar: </div>
{% get_calendar for 10 2010 as calendar %}
<table>
    <tr>
        <th>Mon</th>
        <th>Tue</th>
        <th>Wed</th>
        <th>Thu</th>
        <th>Fri</th>
        <th>Sat</th>
        <th>Sun</th>
    </tr>
    {% for week in calendar %}
    <tr>
        {% for day in week %}
        <td>{{ day.day }}</td>
        {% endfor %}
    </tr>
    {% endfor %}
</table>
</div>

Как я могу динамически указывать с сервера номер месяца и года, например:

{% now "jS F Y H:i" %}

Невозможно иметь тег блока внутри тега блока.Буду признателен за использование этого простого календаря.Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 29 октября 2010

Я хочу представить, как я исправил свою проблему, для тех, у кого могут быть похожие проблемы:

С помощью пользователя fish2000 я решил свой вопрос следующим образом:

Мойопределенное представление:

# Create your views here.
from django.shortcuts import render_to_response
from django.template import RequestContext

import datetime

def calender_view(request, template_name="custom_template_calender_tag.html"):
    d = datetime.date.today()
    recent_month = d.month
    recent_year = d.year
    return render_to_response(template_name, locals(),context_instance=RequestContext(request))

, а затем изменилось get_calendar с

{% get_calendar  for 10 2010 as calendar %}

на

{% get_calendar  for recent_month recent_year as calendar %}

для динамического отображения и отображения последних месяца и года в моемшаблон custom_template_calender_tag.html.

1 голос
/ 28 октября 2010

Я бы предположил, что вы передадите параметры при отображении шаблона в вашем представлении, например:

def yourview(request, month, year):
    return render_to_string("template.html", {
        "month": month,
        "year": year,
    })

, а затем измените get_calendar соответственно:

{% get_calendar for month year as calendar %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...