예제 #1
0
파일: views.py 프로젝트: GJP123/Blogic
def edit_blog(request, username, blog_id=None):
    if request.method == "POST":
        if blog_id is None:
            blog = Blog()
            blog.create_date = datetime.now()
            blog.username = username
        else:
            blog = Blog.objects.get(pk=blog_id)
        form = BlogForm(request.POST, instance=blog)
        if form.is_valid():
            blog.modify_date = datetime.now()  # every edit changed the modify date
            blog.published_date = (
                None
            )  # since we have edited the blog we will need to re-publish it (maybe not the right thing to do)
            # import logging; logging.debug(form.instance.__dict__)
            form.save()
            # import logging; logging.debug(form.instance.__dict__)
            return redirect("blog.views.view_blog", username=username, blog_id=blog.pk)
    else:
        if blog_id is None:
            form = BlogForm()
        else:
            blog = get_object_or_404(Blog, pk=blog_id)
            form = BlogForm(instance=blog)

    return render_to_response(
        "blog/edit_blog.html",
        {"blog_id": blog_id, "form": form, "username": username},
        context_instance=RequestContext(request),
    )
예제 #2
0
def new(request):
    """
    Add a new blog
    """
    if request.method == 'POST':
        form = BlogForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            blog = Blog()
            blog.group = data['group']
            blog.status = data['status']
            blog.title = data['title']
            blog.tag = data['tag']
            blog.content = data['content']
            blog.summary = data['summary']
            blog.access_count = 0
            blog.comment_count = 0
            blog.create_date = datetime.datetime.now()
            blog.update_date = datetime.datetime.now()
            blog.save()
            return HttpResponseRedirect('/adminshow/%s' % blog.id)
    else:
        form = BlogForm()
    return render_to_response('new.html', {'form':form}, context_instance=RequestContext(request, processors=[new_blog, blog_group]))