Пример #1
0
def add_post(request):
    """
    Add a new post to the blog and it will be saved into the model,
    then the last added element will be fetched to show the details
    """
    if request.method == 'POST' and request.POST.get('save'):
        form = PostForm(request.POST)
        if form.is_valid():
            new_blogpost = form.save(commit=False)
            new_blogpost.author = request.user
            form.save()
            message =  "New post %d added!"
            return HttpResponseRedirect('/myblog/')
    elif request.method == 'POST' and request.POST.get('cancel'):
        message = "Adding new post cancelled!"
        return HttpResponseRedirect('/myblog/')
    else:
        form = PostForm()

    context = {}
    context.update(csrf(request))
    context['form'] = form
    return render_to_response('addblog.html',
                             context,
                             context_instance=RequestContext(request))
Пример #2
0
def add_post(request):
    """
    Add a new post to the blog and it will be saved into the model,
    then the last added element will be fetched to show the details
    """
    global cnt_create

    if request.method == 'POST' and request.POST.get('save'):
        form = PostForm(request.POST)
        if form.is_valid():
            form.save(commit=False)
            form.save()
            message =  "New post %d added!"
            request.session['create'] = True
            cnt_create = count_session(request, 'create', cnt_create)
            return HttpResponseRedirect('/myblog/')
    elif request.method == 'POST' and request.POST.get('cancel'):
        message = "Adding new post cancelled!"
        return HttpResponseRedirect('/myblog/')
    else:
        form = PostForm()
    ss_start = session_start_date(request)
    context = {'sessionStartTime' : ss_start,
               'sessionStat' : get_sessions(),
               }
    context.update(csrf(request))
    context['form'] = form
    res = render_to_response('addblog.html',
                             context,
                             context_instance=RequestContext(request))
    return res
Пример #3
0
def add_post(request):
    form = PostForm(request.POST or None)
    if form.is_valid():
        post = form.save(commit=False)
        post.author = request.user
        post.save()
        return redirect(post)
    return render_to_response('add_post.html', { 'form': form }, context_instance=RequestContext(request))
Пример #4
0
def post_form_test(request):
    if request.method == 'GET':
        form = PostForm(request.POST)
        if form.is_valid():
            pass  # does nothing, just trigger the validation
    else:
        form = PostForm()
    return render(request, 'myblog/post_list.html', {'form': form})
Пример #5
0
def post_form_view(request):
    if request.method == "POST":
        form = PostForm(request.POST)
        if form.is_valid():
            model_instance = form.save(commit=False)
            model_instance.timestamp = timezone.now()
            model_instance.save()
            return redirect('/blog')
    else:
        form = PostForm()
        return render(request, "post_form.html", {'form': form})
Пример #6
0
def post_edit(request, pk):#edit an existing post
        post = get_object_or_404(Post, pk=pk)
        if request.method == "POST":
            form = PostForm(request.POST, instance=post)
            if form.is_valid():
                post = form.save(commit=False)
                post.author = request.user
                post.save()
                return redirect('myblog.views.post_detail', pk=post.pk)
        else:
            form = PostForm(instance=post)
        return render(request, 'myblog/post_edit.html', {'form': form})
Пример #7
0
def new_post(request):#creation of new post
    if request.method == "POST":#if the form is completed, we go to post_detail page
        form = PostForm(request.POST)
        if form.is_valid():
            post = form.save(commit=False)
            post.author = request.user
            if post.is_draft == False:
                post.published_date = timezone.now()
            else:#post is draft
                post.published_date = None
            post.save()
            return redirect('myblog.views.post_detail', pk=post.pk)
    else:#want to create a new post, so turn on page post_edit
        form = PostForm()
    return render(request, 'myblog/post_edit.html', {'form': form})
Пример #8
0
def add_view(request):

    if request.method == 'POST':
        form = PostForm(request.POST)
        if form.is_valid():
            model_instance = form.save(commit=False)
            model_instance.published_date = timezone.now()
            model_instance.save()
            return redirect('/')

    else:

        form = PostForm()

        return render(request, 'add_post.html', {'form': form})
Пример #9
0
def add_model(request):

    if request.method == "POST":
        form = PostForm(request.POST)
        if form.is_valid():
            model_instance = form.save(commit=False)
            model_instance.created_date = datetime.datetime.now()
            model_instance.published_date = datetime.datetime.now()
            model_instance.save()
            return redirect('/')

    else:

        form = PostForm()

        return render(request, "my_template.html", {'form': form})
Пример #10
0
def addpost(request):
	global previousRequest
	previousRequest = "addpost"
	if request.method == 'POST':
		post_form = PostForm(request.POST)
		if post_form.is_valid():
			post = post_form.save(commit = False)
			post.published_date = timezone.now();
			post.author = request.user
			post.save()
			return HttpResponseRedirect(reverse('myblog:index'))
		else:
			context_dict = {'post_form': post_form}
			return render(request, 'myblog/addpost.html', context_dict)
	else:
		post_form = PostForm()
		context_dict = {'post_form': post_form}
		return render(request, 'myblog/addpost.html', context_dict)
Пример #11
0
def addpost(request):
    if request.method == 'POST':
        post_form = PostForm(request.POST)
        if post_form.is_valid():
            post = post_form.save(commit=False)
            post.published_date = timezone.now()
            post.author = request.user
            post.save()
            global posts
            posts = Post.objects.filter(
                author=request.user).order_by('-published_date')
            return HttpResponseRedirect(reverse('myblog:index'))
        else:
            context_dict = {'post_form': post_form}
            return render(request, 'myblog/addpost.html', context_dict)
    else:
        post_form = PostForm()
        context_dict = {'post_form': post_form}
        return render(request, 'myblog/addpost.html', context_dict)
Пример #12
0
def post_form_upload(request):
    if request.method == 'GET':
        form = PostForm()
    else:
        # A POST request: Handle Form Upload
        form = PostForm(request.POST) # Bind data from request.POST into a PostForm
 
        # If data is valid, proceeds to create a new post and redirect the user
        if form.is_valid():
            content = form.cleaned_data['content']
            created_at = form.cleaned_data['created_at']
            post = m.Post.objects.create(content=content,
                                         created_at=created_at)
            return HttpResponseRedirect(reverse('post_detail',
                                                kwargs={'post_id': post.id}))
 
    return render(request, 'post/post_form_upload.html', {
        'form': form,
    })
Пример #13
0
def edit_post(request, postid):
    """
    Fetch the nth post from the blog, validate the input data and update the model,
    """
    global cnt_edit

    queryset = Post.getPostByID(postid)
    ss_start = session_start_date(request)

    if queryset:
        queryset = Post.getPostByID(postid)
        context = {'post': queryset,
                   'sessionStartTime' : ss_start,
                   'sessionStat' : get_sessions(),
                   }
    else:
        queryset = Post.objects.get(id=postid)

    if request.method == 'POST' and request.POST.get('update'):
        # Create a form to edit an existing Post, but use
        # POST data to populate the form!
        p_instance = Post.objects.get(pk=postid)
        update_form = PostForm(request.POST, instance=p_instance)
        if update_form.is_valid():
            update_form.save()

            request.session["edit"] = True
            cnt_edit = count_session(request, 'edit', cnt_edit)
            ss_start = session_start_date(request)

            message = "Post %d: updated! " %(int(postid))
            context = {'post': queryset, 'message': message}
            return HttpResponseRedirect('/myblog/'+ postid)
    elif request.method == 'POST' and request.POST.get('cancel'):
        message = "Updating post cancelled!"
        return HttpResponseRedirect('/myblog/')
    else:
        message = "Updating post interrupted!"

    res = render_to_response('editblog.html',
                              context,
                              context_instance=RequestContext(request))
    return res
Пример #14
0
def edit_post(request, postid):
    """
    Fetch the nth post from the blog, validate the input data and update the model,
    """
    try:
        queryset = Post.objects.get(id=postid)
        context = {'post': queryset,}
        if request.method == 'POST' and request.POST.get('update'):
            # Create a form to edit an existing Post, but use
            # POST data to populate the form!
            p_instance = Post.objects.get(pk=postid)
            if p_instance.author == request.user:
                update_form = PostForm(request.POST, instance=p_instance)
                if update_form.is_valid():
                    update_form.save()
                    msg = "Post %d: updated! " %(int(postid))
                    context = {'post': queryset, 'message': msg}
                    return HttpResponseRedirect('/myblog/'+ postid)
            else:
                msg = "You can only edit your blog posts."
                context = {'message': msg}
                return render_to_response('index.html',
                              {'message': msg},
                              context_instance=RequestContext(request))

        elif request.method == 'POST' and request.POST.get('cancel'):
            msg = "Updating post cancelled!"
            return HttpResponseRedirect('/myblog/')
        else:
            msg = "Updating post interrupted!"
            return render_to_response('editblog.html',
                              context,
                              context_instance=RequestContext(request))
    except Post.DoesNotExist:
        msg = "No blog post found for edit."
        context = {'message': msg,}
        return render_to_response('index.html',context,
                                context_instance=RequestContext(request))
Пример #15
0
def editpost(request, pk):
	post = get_object_or_404(Post, pk = pk)
	global previousRequest
	if post.author != request.user:
		previousRequest = "bug"
		return HttpResponseRedirect(reverse('myblog:index'))
	else:
		previousRequest = "editpost"
	if request.method == 'POST':
		post_form = PostForm(request.POST, instance = post)
		if post_form.is_valid():
			post = post_form.save(commit = False)
			post.published_date = timezone.now();
			post.author = request.user
			post.save()
			return HttpResponseRedirect(reverse('myblog:index'))
		else:
			context_dict = {'post_form': post_form}
			return render(request, 'myblog/editpost.html', context_dict)
	else:
		post_form = PostForm(instance = post)
		context_dict = {'post_form': post_form, 'pk': pk}
		return render(request, 'myblog/editpost.html', context_dict)