【发布时间】:2012-06-30 19:11:36
【问题描述】:
试图弄清楚如何在 Django 模板系统中访问我的变量。我的models.py:
class SubCategory(models.Model):
name = models.CharField(max_length=50, unique=True)
category = models.ManyToManyField(Category)
我的看法:
from myapp.models import Category, SubCategory
def create_in_category(request, slug):
category = get_object_or_404(Category, slug=slug)
subcategory = SubCategory()
ad = Ad.objects.create(category=category, subcategory=subcategory, user=request.user,
expires_on=datetime.datetime.now(), active=False)
ad.save()
return redirect('myapp_create_ad_edit', pk=ad.pk)
...
class AdCreationEditView(AdEditView):
def get_queryset(self):
qs = super(AdEditView, self).get_queryset()
return qs.filter(active=False, user=self.request.user)
def get_success_url(self):
return reverse('classifieds_create_ad_preview',
kwargs=dict(pk=self.object.pk))
def get_context_data(self, **kwargs):
context = super(AdCreationEditView, self).get_context_data(**kwargs)
context['create'] = True
return context
我希望能够在我的模板中访问{{ subcategory }},但由于我认为错误而导致错误:'subcategory' is an invalid keyword argument for this function。任何建议将不胜感激。谢谢
【问题讨论】:
-
您在哪里使用模板?我在这里没有看到任何模板渲染。
-
实际上渲染该模板是什么?您列出的功能只是重定向,它不呈现任何内容。
-
这不是您呈现模板的视图。你是在重定向,而不是渲染。
标签: python django view django-templates arguments