Django Comment, anexar símbolo ao comentário url?
-
12-09-2019 - |
Pergunta
im usando o sistema de comentários, agora, eu gostaria de re-escrever a forma segmentar o comentário url e acrescentar um símbolo #, eu quero mover o seccion página para a lista comentário exatamente para o último utilizador comentário com <a name=#{{comment.id}}?> username </a>
Im usando seguinte para redirecionamento do usen quando o comentário foi postado:
{% get_comment_form for object as form %}
<form action="{% comment_form_target %}" method="POST">
{{ form }}
<input type="hidden" name="next" value="{{ object.get_absolute_url }}" />
<input type="submit" name="preview" class="submit-post" value="Preview"></td>
</form>
Mas no Django Doc não dizem nada sobre a reescrita ou personalizador do comentário redirecionamento / url
Qualquer idéia?
Graças
Solução
Eu só tropeçou em toda esta pouco de feiúra. Depois de ler o código fonte que eu não vi nenhuma boa maneira de substituir esse comportamento. Por padrão, você será redirecionado para a URL na variável {{ next }}
do modelo e Django adiciona uma ?c=1
para a URL onde o 1
é o ID do comentário. Eu queria que isso seja, em vez #c1
para que o usuário está pulou a página para o comentário que só postou. Eu fiz isso com um pouco de "patching macaco" da seguinte forma:
from django.contrib.comments.views import utils
from django.core import urlresolvers
from django.http import HttpResponseRedirect
def next_redirect(data, default, default_view, **get_kwargs):
next = data.get("next", default)
if next is None:
next = urlresolvers.reverse(default_view)
if get_kwargs:
next += '#c%d' % (get_kwargs['c'],)
return HttpResponseRedirect(next)
# Monkey patch
utils.next_redirect = next_redirect