Exemple #1
0
def edit_article(request, article_slug):
    article = Article.find(article_slug)
    form = EditArticleForm(request.POST or None, initial=article.to_dict())
    if request.POST.get("delete"):
        article.key.delete()
        return redirect("/")
    elif form.is_valid():
        article.title = form.cleaned_data["title"]
        article.content = form.cleaned_data["content"]
        article.last_update = datetime.now()
        article.save()
        return redirect("/")
    return render(request, "form.html", {"form": form})
Exemple #2
0
def view_article(request, article_slug):
    article = Article.find(article_slug)
    return render(request, "article.html", {"article": article})
Exemple #3
0
 def test_delete_article(self):
     article = self.create_article()
     self.client.post('/admin/edit/%s' % article.slug,
         {'delete': True}
     )
     self.assertFalse(Article.find(article.slug))
Exemple #4
0
 def test_add_article(self):
     self.client.post('/admin/new',
         {'title': 'New title', 'content': 'New content'}
     )
     self.assertTrue(Article.find('new-title'))