def edit(request, post_id): post = get_object_or_404(Post, pk = post_id) parent = post.parent form = PostForm(request.POST or None, instance = post, author = request.user) tag_form = TagForm(request.POST or None, post = post) if parent is None else None if (parent is not None and form.is_valid()) or (parent is None and form.is_valid() and tag_form.is_valid()): form.save() if parent is None: tag_form.save() r_post = post if not post.parent else post.parent return redirect(reverse("posts:view", args=[r_post.id, r_post.title_slug()])) context = { 'form' : form, 'tag_form' : tag_form, } return render_to_response( "posts/post_form.html", context, RequestContext(request) )
def add_todo(request): user = get_user_set(request) todo_form = TodoModelForm(request.POST, user_set=user) tag_form = TagForm(request.POST or None) context = {} context['form'] = todo_form if request.POST: if todo_form.is_valid(): instance = todo_form.save(commit=False) instance.user = request.user instance.save() context['form'] = todo_form return redirect('main_app:home') if tag_form.is_valid(): instance = tag_form.save() return redirect('main_app:create') return render(request, "main_app/add_todo.html", context=context)
def add_tag(request, slug): toto = get_object_or_404(Toto, slug=slug) if not request.user.is_authenticated(): raise Http404 add_tags_form = AddTagsForm(data=request.POST) if add_tags_form.is_valid(): form_instance = add_tags_form.save(commit=False) toto_tags = add_tags_form.cleaned_data['tags'] for tag in toto_tags: if (len(tag.text.split(' '))>1): continue toto.tags.add(tag) else: add_tags_form = AddTagsForm() form = TagForm(data=request.POST) text = form['text'].value() print(text) toto = get_object_or_404(Toto, slug=slug) all = Tag.objects.all() flag = 0 for a in all: if (text==a.text): flag = 1 break if form.is_valid(): instance = form.save(commit=False) instance.user = request.user instance.save() else: form = TagForm() context = { 'title': "Create", 'form' : form, 'add_tags_form': add_tags_form, 'instance': toto, } return render(request, 'tags/add.html', context)
def new(request, parent_id = None): parent = None save_mode = None if parent_id: parent = get_object_or_404(Post, pk = parent_id) form = PostForm( request.POST or None, request.FILES or None, author = request.user, parent = parent, ) image_form = ImageForm(request.POST or None, request.FILES or None) game_form = GameForm(request.POST or None, request.FILES or None) tag_form = TagForm(request.POST or None) if parent is None else None valid = False #A reply if parent is not None: valid = (parent is not None and form.is_valid()) #a new post: if parent is None: valid = (parent is None and form.is_valid() and tag_form.is_valid()) #an image post: if request.GET.get('image',False): save_mode = 'image' valid = (parent is None and form.is_valid() and tag_form.is_valid() and image_form.is_valid()) #a game post: if request.GET.get('game',False): save_mode = 'game' valid = (parent is None and form.is_valid() and tag_form.is_valid() and game_form.is_valid()) if valid: post = form.save() if parent is None: tag_form.post = post tag_form.save() if parent is None: PostReader.clear(post = post) else: PostReader.clear(post = post.parent) if image_form.is_valid() and save_mode == 'image': image_form.save(post = post) if game_form.is_valid() and save_mode == 'game': game_form.save(post = post) game_form.save_m2m() r_post = post if not parent else parent return redirect(reverse("posts:view", args=[r_post.id, r_post.title_slug()])) context = { 'form' : form, 'tag_form' : tag_form, 'image_form' : image_form, 'game_form' : game_form, } return render_to_response( "posts/post_form.html", context, RequestContext(request) )