Python 如果条件为true,则在另一个视图中调用局部视图
如果条件为真,我想在视图中调用细节视图,但我总是有相同的错误“上下文必须是dict而不是str” 我的代码是:Python 如果条件为true,则在另一个视图中调用局部视图,python,django,templates,view,pycharm,Python,Django,Templates,View,Pycharm,如果条件为真,我想在视图中调用细节视图,但我总是有相同的错误“上下文必须是dict而不是str” 我的代码是: class VotacionView(LoginRequiredMixin, FormMixin, DetailView, request): model = Votacion form_class = realizarVotacionForm template_name = "RealizarVotacion.html" success_url = reverse_lazy('h
class VotacionView(LoginRequiredMixin, FormMixin, DetailView, request):
model = Votacion
form_class = realizarVotacionForm
template_name = "RealizarVotacion.html"
success_url = reverse_lazy('home')
def __init__(self, **kwargs):
super().__init__(**kwargs)
def get_success_url(self):
return reverse('home')
def get_context_data(self, **kwargs):
if not self.object.voto_rectificable:
if UsuarioVotacion.objects.filter(user=self.request.user, Votacion=self.object).exists():
return reverse('estadisticasvotacionsimple', kwargs={'pk': self.object.pk})
more stuff...
您不能跳出get_context_data方法。但你可以做到:
def get_success_url(self):
if self.jump:
return reverse('estadisticasvotacionsimple', kwargs={'pk': self.object.pk})
return reverse('home')
def get_context_data(self, **kwargs):
if not self.object.voto_rectificable:
if UsuarioVotacion.objects.filter(user=self.request.user, Votacion=self.object).exists():
self.jump=True
return super(Classname, self).get_context_data(**kwargs)
else:
self.jump=False
......
请包括完整的回溯。