def blog_update(request, id=""): id = id global blog,form,tag,paginator if request.method == 'POST': form = BlogForm(request.POST) tag = TagaddForm(request.POST) if form.is_valid() and tag.is_valid(): cd = form.cleaned_data cdtag = tag.cleaned_data tagname = cdtag['tag_name'] tagnamelist = tagname.split() for taglist in tagnamelist: Tag.objects.get_or_create(tag_name=taglist.strip()) title = cd['caption'] content = cd['content'] blog = Blog.objects.get(id=id) if blog: blog.caption = title blog.content = content blog.save() for taglist in tagnamelist: blog.tags.add(Tag.objects.get(tag_name=taglist.strip())) blog.save() tags = blog.tags.all() for tagname in tags: tagname = unicode(str(tagname), "utf-8") if tagname not in tagnamelist: notag = blog.tags.get(tag_name=tagname) blog.tags.remove(notag) else: blog = Blog(caption=blog.caption, content=blog.content) blog.save() # return HttpResponseRedirect('/sblog/blog/%s'% id) blogs = Blog.objects.all() paginator = Paginator(blogs, 4) page = request.GET.get('page') try: contacts = paginator.page(page) except PageNotAnInteger: contacts = paginator.page(1) except (EmptyPage,InvalidPage): contacts = paginator.page(paginator.num_pages) return render_to_response('admin_bloglist.html',{"content":content}) else: try: blog = Blog.objects.get(id=id) except Exception: raise Http404 form = BlogForm(initial={'caption': blog.caption, 'content': blog.content}, auto_id=False) tags = blog.tags.all() if tags: taginit = '' for x in tags: taginit += str(x) + ' ' tag = TagaddForm(initial={'tag_name': taginit}) else: tag = TagaddForm() return render_to_response("admin_blogupdate.html", {'blog': blog, 'form': form, 'id': id, 'tag': tag},context_instance=RequestContext(request))
def tag_add(request): if request.method == 'POST': form = TagaddForm(request.POST) if form.is_valid(): cd = form.cleaned_data name = cd['tag_name'] tag = Tag(tag_name = name) tag.save() return HttpResponseRedirect("/blog/admin/tag_list/") else: form = TagaddForm() return render_to_response('admin_tagadd.html',locals(), context_instance=RequestContext(request))