def edit_post(req, author, date, slug): redirect_to = reverse("blog_post_list", args=[author]) date = d(*time.strptime(date, '%Y-%m-%d')[:3]) today = (dt.combine(date, t.min), dt.combine(date, t.max)) post = get_object_or_404(Post.objects.filter(date__range=today), slug=slug, author__username=author) if req.user != post.author and not req.user.is_superuser: return HttpResponseRedirect(redirect_to) form = PostForm(instance=post) if req.POST: form = PostForm(req.POST, instance=post) if form.is_valid(): ps = form.save() last_post = Post.objects.filter(author=ps.author, last_post=True) if last_post: last_post = last_post[0] last_post.last_post = False last_post.save() post_ldate = Post.objects.filter(author=ps.author, published=True).order_by('-date') if post_ldate: post_ldate = post_ldate[0] post_ldate.last_post = True post_ldate.save() return HttpResponseRedirect(redirect_to) return render_to_response('blog/createPost.html', { 'form': form, 'back_link': redirect_to, 'is_edit': 1 }, RequestContext(req))
def edit_post(request, post_id): logging.critical(request.method) a_post_instance = get_object_or_404(Post, id=post_id) form = PostForm(request.POST or None, instance=a_post_instance) if form.is_valid(): # All validation rules pass post = form.save() return redirect(reverse("blog_posts")) return render(request, "blog/edit_post.html", {'form': form})
def create_post(request): form = PostForm(request.POST or None) # Por qué or None? if form.is_valid(): # All validation rules pass user = request.user post = form.save(commit=False) post.author = user post.save() return redirect(reverse("blog_home")) return render(request, "blog/create_post.html", {'form': form})
def create_post(request): form = PostForm(request.POST or None) if form.is_valid(): # All validation rules pass user = User.objects.all()[0] post = form.save(commit=False) post.author = user post.save() return redirect(reverse("blog_posts")) return render(request, "blog/create_post.html", {'form': form})
def create_post_first_aproach(request): if request.method == "POST": form = PostForm(request.POST) # A form bound to the POST data if form.is_valid(): # All validation rules pass # Process the data in form.cleaned_data # ... user = User.objects.all()[0] post = form.save(commit=False) post.author = user post.save() return redirect(reverse("blog_posts")) # Redirect after POST else: form = PostForm() return render(request, "blog/create_post.html", {'form': form})
def create_post_first_aproach(request): if request.method == "POST": form = PostForm(request.POST) # A form bound to the POST data if form.is_valid(): # All validation rules pass # Process the data in form.cleaned_data # ... user = User.objects.all()[0] post = form.save(commit=False) post.author = user post.save() return redirect(reverse("blog_posts")) # Redirect after POST else: form = PostForm() return render(request, "blog/create_post.html", {'form': form})
def edit_post(req, author, date, slug): redirect_to = reverse("blog_post_list", args=[author]) date = d(*time.strptime(date, '%Y-%m-%d')[:3]) today = (dt.combine(date, t.min), dt.combine(date, t.max)) post = get_object_or_404(Post.objects.filter(date__range=today), slug=slug, author__username=author) if req.user != post.author and not req.user.is_superuser: return HttpResponseRedirect(redirect_to) form = PostForm(instance = post) if req.POST: form = PostForm(req.POST, instance = post) if form.is_valid(): ps = form.save() last_post = Post.objects.filter(author=ps.author, last_post=True) if last_post: last_post = last_post[0] last_post.last_post = False last_post.save() post_ldate = Post.objects.filter(author=ps.author, published=True).order_by('-date') if post_ldate: post_ldate = post_ldate[0] post_ldate.last_post = True post_ldate.save() return HttpResponseRedirect(redirect_to) return render_to_response('blog/createPost.html', {'form': form, 'back_link': redirect_to, 'is_edit': 1}, RequestContext(req))
def test_form_still_submits_without_image(self, sample_post_data): form = PostForm(data=sample_post_data) form.data['image'] = None assert form.is_valid(), 'Should still be valid'
def test_empty_form_is_invalid(self): form = PostForm(data={}) assert not form.is_valid(), 'Should be invalid'