实际上,我知道在Django模板中这是不可能的,但我想执行{{ Perception.objects.filter(loan__request__customer__pk = 207) }}
以下是我用于该模板的视图:
class PerceptionIndexView(StaffRestrictedMixin, FrontendListView):
page_title = _('Perception')
model = Perception
template_name = 'loanwolf/perception/index.html'
pjax_template_name = 'loanwolf/perception/index.pjax.html'
row_actions_template_name = 'loanwolf/perception/list-actions.inc.html'
url_namespace = 'perception'
def active(self, obj):
if obj.is_active:
return icon(obj.get_icon(), css_class='green-text', tooltip=_('Active'))
else:
return icon(obj.get_icon(), css_class='red-text', tooltip=_('Inactive'))
def notes_count(self, obj):
return obj.notes.count()
notes_count_label = _('Notes')
def get_change_url(self, obj):
return obj.get_absolute_url()
def my_view(self, A_pk):
filter_perceptions= Perception.objects.filter(loan__request__customer__pk=A_pk)
return render_to_response('../template/loanwolf/perception/list-view-#2.inc.html', {'filter_perceptions': filter_perceptions})
我尝试使用不同路径的render_to_response
,但到目前为止没有任何事情发生。知道我的观点位于loanwolf/perception
,我的模板list-view-#2.inc.html
位于loanwolf/templates/loanwolf/perception
。此外,重要的是要知道FrontendListView使用ListView。我想我不能使用' render_to_response',但目前还不清楚。
是否有人可以使用替代解决方案,以便我可以访问模板中的列表Perception.objects.filter(loan__request__customer__pk)
?
提前致谢!
答案 0 :(得分:0)
将my_view
内的代码放入名为get_context_data
的方法中,类似于:
def get_context_data(self, **kwargs):
context = super(PerceiptionIndexView, self).get_context_data(**kwargs)
filter_perceptions = Perception.objects.filter(loan__request__customer__pk=...)
context["filter_perceptions"] = filter_perceptions
return context
然后通过filter_perceptions
{{filter_perceptions}}
如果您需要稍微不同的内容,请查看文档以获取更多示例。