def view_question(request, id): tags = Tag.objects.usage_for_model(Question, counts=True) tags.sort(key=operator.attrgetter('count'), reverse=True) question = get_object_or_404(Question, id=int(id)) user_ip = request.META['REMOTE_ADDR'] try: vista = View.objects.get(question=question, ip=user_ip) except: vista = View() vista.question = question vista.ip = user_ip vista.save() question.views = question.views + 1 question.save() if request.method == 'POST': form = AnswerForm(request.POST) if form.is_valid(): answer = Answer() answer.question = question answer.answer = form.cleaned_data['answer'] answer.fecha = datetime.datetime.now() answer.user = request.user answer.save() #notify_user(question, answer) thread.start_new_thread(notify_user, (question, answer)) return HttpResponseRedirect('/foro/questions/%s/?ansid=%s' % (question.id, answer.id)) else: form = AnswerForm() ansid = request.GET.get('ansid', '') return render_to_response('askbotmini/view_question.html', RequestContext(request, locals()))
def edit_answer(request, id): tags = Tag.objects.usage_for_model(Question, counts=True) tags.sort(key=operator.attrgetter('count'), reverse=True) answer = get_object_or_404(Answer, id=id) if answer.user != request.user: return HttpResponse('<h2>Acceso Denegado</h2>') if request.method == 'POST': form = AnswerForm(request.POST, instance=answer) if form.is_valid(): form.save() return HttpResponseRedirect('/foro/questions/%s/?ansid=%s' % (answer.question.id, answer.id)) else: form = AnswerForm(instance=answer) return render_to_response('askbotmini/edit_answer.html', RequestContext(request, locals()))