好吧,所以我要删除一个与“questao”相关的“opcao” 在我的html中有一个按钮:
<a href="{% url 'votacao:apagaopcao' questao.id %}">
<button> Apagar Opção </button>
</a>
指向以下url:
^{pr2}$这是这样的观点:
def apagaopcao(request, opcao_id, questao_id):
questao = get_object_or_404(Questao, pk=questao_id)
try:
opcao_seleccionada = questao.opcao_set.get(pk=request.POST['opcao'])
except (KeyError, Opcao.DoesNotExist):
# Apresenta de novo o form para votar
return render(request, 'votacao/detalhe.html', {'questao': questao, 'error_message': "Não escolheu uma opção",})
else:
opcao_seleccionada.delete()
return render(request, 'votacao/detalhe.html', {'questao': questao})
它给我带来了一个例外:
Exception Type: TypeError
Exception Value: apagaopcao() missing 1 required positional argument: 'questao_id'
我刚开始试着弄清楚django,那我还缺什么呢?谢谢!!在
在url定义中,您只定义了一个命名参数
opcao_id
,但是您的视图opcao_id
和questao_id
中有两个参数,这当然行不通。您应该在url定义中添加questao_id
,或者从views函数中删除它。在选中django doc on how url parameters work with views function。在
相关问题 更多 >
编程相关推荐