コード例 #1
0
def ask_question(request, classroom):
    """Ask question for specific class

    Need to publish the question to rest of classroom
    """
    if request.method == 'POST':
        form = AskQuestionForm(data=request.POST)
        if form.is_valid():
            question = form.save(request.user, classroom)
            message = {"success": True}
            channel = "classroom_{0}".format(classroom.pk)
            pub_message = {
                "type": "new_question",
                "question": {
                    "pk": question.pk,
                    "subject": question.subject,
                    "content": question.content,
                    "student": question.student.username,
                    "up_vote_url": reverse("question_up_vote",
                                           args=[question.pk]),
                }
            }
            publish(channel, pub_message)
        else:
            message = {"error": form.errors}
            print message
            return HttpResponseBadRequest(message)
        return HttpResponse(json.dumps(message))
    return HttpResponseNotFound("Need to post")
コード例 #2
0
ファイル: views.py プロジェクト: AkademieOlympia/tutorus
def ask_question(request, classroom):
    """Ask question for specific class

    Need to publish the question to rest of classroom
    """
    if request.method == 'POST':
        form = AskQuestionForm(data=request.POST)
        if form.is_valid():
            question = form.save(request.user, classroom)
            message = {"success": True}
            channel = "classroom_{0}".format(classroom.pk)
            pub_message = {
                "type": "new_question",
                "question": {
                    "pk": question.pk,
                    "subject": question.subject,
                    "content": question.content,
                    "student": question.student.username,
                    "up_vote_url": reverse(
                        "question_up_vote", args=[question.pk]
                    ),
                }
            }
            publish(channel, pub_message)
        else:
            message = {"error": form.errors}
            print message
            return HttpResponseBadRequest(message)
        return HttpResponse(json.dumps(message))
    return HttpResponseNotFound("Need to post")
コード例 #3
0
ファイル: views.py プロジェクト: sashaudalv/ask-udalov
def ask(request):
    user = getAuthenticatedUser(request)

    if request.method == 'POST':
        form = AskQuestionForm(request.POST)
        if form.is_valid():
            question = Question.objects.create(
                user_ptr=user,
                title=form.cleaned_data.get('title'),
                text=form.cleaned_data.get('text'))
            tags = form.cleaned_data.get('tags').split(',')
            for tag in tags:
                if ' ' in tag:
                    tag = tag.replace(' ', '_')
                try:
                    t = Tag.objects.get(name=tag)
                except Tag.DoesNotExist:
                    t = Tag.objects.create(name=tag)
                    t.save()

                question.tags.add(t)

            question.save()
            return HttpResponseRedirect('/question/' + str(question.id))
    else:
        form = AskQuestionForm()

    context = {'User': user, 'form': form}
    return render(request, 'ask.html', context)
コード例 #4
0
ファイル: views.py プロジェクト: callowayproject/django-qna
def question_create(request):
    if request.method == 'POST':
        form = AskQuestionForm(request.POST, request.FILES)
        if form.is_valid():
            return HttpResponseRedirect(form.save().get_absolute_url())
    else:
        form = AskQuestionForm()
    return render_to_response('qna/create.html', {
        'form':form,
    }, context_instance=RequestContext(request))
コード例 #5
0
def question_create(request):
    if request.method == 'POST':
        form = AskQuestionForm(request.POST, request.FILES)
        if form.is_valid():
            return HttpResponseRedirect(form.save().get_absolute_url())
    else:
        form = AskQuestionForm()
    return render_to_response('qna/create.html', {
        'form': form,
    },
                              context_instance=RequestContext(request))