यह मेरे लिए स्पष्ट नहीं है कि Django 1.5 में वर्ग-आधारित विचारों में URL-मापदंडों का उपयोग करना सबसे अच्छा कैसे है।
निम्नलिखित को धयान मे रखते हुए:
राय:
from django.views.generic.base import TemplateView
class Yearly(TemplateView):
template_name = "calendars/yearly.html"
current_year = datetime.datetime.now().year
current_month = datetime.datetime.now().month
def get_context_data(self, **kwargs):
context = super(Yearly, self).get_context_data(**kwargs)
context['current_year'] = self.current_year
context['current_month'] = self.current_month
return context
URLCONF:
from .views import Yearly
urlpatterns = patterns('',
url(
regex=r'^(?P<year>\d+)/$',
view=Yearly.as_view(),
name='yearly-view'
),
)
मैं year
अपने दृष्टिकोण में पैरामीटर का उपयोग करना चाहता हूं, इसलिए मैं तर्क कर सकता हूं जैसे:
month_names = [
"January", "February", "March", "April",
"May", "June", "July", "August",
"September", "October", "November", "December"
]
for month, month_name in enumerate(month_names, start=1):
is_current = False
if year == current_year and month == current_month:
is_current = True
months.append({
'month': month,
'name': month_name,
'is_current': is_current
})
उपर्युक्त की तरह CBVs में url पैरामीटर को कोई सबसे अच्छा उपयोग कैसे करेगा, यह उपवर्गित है TemplateView
और जहां किसी को आदर्श रूप से तर्क को इस तरह रखना चाहिए, जैसे। एक विधि में
extra_context
तानाशाही का विकल्प हैdjango2
, यहां