Beispiel #1
0
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))
Beispiel #2
0
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})
Beispiel #3
0
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})
Beispiel #4
0
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})
Beispiel #5
0
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})
Beispiel #6
0
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})
Beispiel #7
0
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))
Beispiel #8
0
 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'
Beispiel #9
0
 def test_empty_form_is_invalid(self):
     form = PostForm(data={})
     assert not form.is_valid(), 'Should be invalid'