Ejemplo n.º 1
0
def ask(request):
    profile = Profile.objects.get_profile(request.user)
    tbags = Tag.objects.all()
    error_message = ''
    form = QuestionForm()

    if request.method == 'POST':
        form = QuestionForm(request.POST)
        if form.is_valid():
            Question.objects.create_question(profile, form.cleaned_data['titleField'],
            form.cleaned_data['questionTextField'],
            form.cleaned_data['tagsField'].split())
            return redirect('/ask/')
        else:
            error_message = form.errors

    context = {
        'profile': profile,
        'tags': tbags,
        'error_message': error_message,
        'form': form,
        'user': request.user,
    }
    context.update(csrf(request))
    return render_to_response ('ask.html', context)
Ejemplo n.º 2
0
def ask(request):
    if request.user.is_authenticated():
        User = getAuthenticatedUser(request)
        if request.POST:
            form = QuestionForm(request.POST)
            if form.is_valid():
                question = form.saveQuestion(User)
                return redirect('/question/' + str(question.id))
        else:
            form = QuestionForm()
        return render(request, 'ask/ask.html', { 'form' : form })
    else:
        return redirect('/')
Ejemplo n.º 3
0
def ask(request):
    if request.method == 'POST':
        form = QuestionForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            q = Question(title=data['title'],
                         text=data['content'],
                         author=request.profile,
                         published=datetime.now())
            q.save()
            q.tags.add(
                *[Tag.objects.get_or_create(name=t)[0] for t in data['tags']])
            return redirect(reverse('question', kwargs={'id': q.id}))
    else:
        form = QuestionForm()
    return render(request, 'ask.html', {'form': form})
Ejemplo n.º 4
0
def add_question(request):
    if request.method == "POST":
        form = QuestionForm(request.POST)
        if form.is_valid():  # плохой, потмоу что появляется cleaned_data - неявно меняет состояние элемента
            q = form.save()
            q = Question.objects.get(pk=q.pk)
            q.author = request.user
            q.save()
            return redirect('/question/?id=' + str(q.pk))

    else:
        form = QuestionForm()  # unbound form

    context = {
        'form': form,
    }
    return render(request, 'ask.html', context)
Ejemplo n.º 5
0
    def post(self, request):
        try:
            profile = Profile.objects.get(user=request.user)
        except Profile.DoesNotExist:
            profile = Profile(user=request.user)

        form = QuestionForm(data=request.POST, user=profile)
        if form.is_valid():
            form.save()
            form.save_m2m()
            return HttpResponseRedirect("../question/" +
                                        str(Question.objects.latest('id').id))
        return render(request, 'ask.html', {'form': form})