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})
def view_article(request, article_slug): article = Article.find(article_slug) return render(request, "article.html", {"article": article})
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))
def test_add_article(self): self.client.post('/admin/new', {'title': 'New title', 'content': 'New content'} ) self.assertTrue(Article.find('new-title'))