示例#1
0
def test_valid():
    data = {
        "title": "Bundys Blog",
        "meta_description": "This is Bundys test blog",
        "author": "Ted Bundy",
        "post_body": "Article about something amazing",
        "is_live": True,
    }
    form = BlogForm(DummyPostData(data))
    assert form.validate()
    assert form.data == data
示例#2
0
def test_is_live_invalid():
    data = {
        "title": "Bundys Blog",
        "meta_description": "",
        "author": "Ted Bundy",
        "post_body": "",
        "is_live": True,
    }
    form = BlogForm(DummyPostData(data))
    assert not form.validate()
    assert "is_live" in form.errors
示例#3
0
def test_valid_with_missing_data():
    data = {
        "title": "Bundys Blog",
        "meta_description": "",
        "author": "Ted Bundy",
        "post_body": "",
        "is_live": False,
    }
    form = BlogForm(DummyPostData(data))
    assert form.validate()
    assert form.data == data
示例#4
0
文件: edit.py 项目: davidaccent/blog
    async def get(self, request):
        blog_id = request.path_params["blog_id"]
        blog = Blog.query.get_or_404(blog_id)
        form = BlogForm(obj=blog)

        template = "blog/blog_form.html"
        context = {"request": request, "object": blog, "form": form}
        return templates.TemplateResponse(template, context)
示例#5
0
def new_blog(id):
    form = BlogForm()
    user = User.query.get_or_404(id)
    if form.validate_on_submit():
        picture_file = save_picture(form.picture.data)
        blog = Blog(city=form.city.data,
                    image_file=picture_file,
                    category=form.category.data,
                    summary=form.summary.data,
                    title=form.title.data,
                    story=form.story.data,
                    blog_author= user)
        db.session.add(blog)
        db.session.commit()
        flash('Your blog post has been created', 'success')
        return redirect(url_for('blog.blog_view'))
    return render_template('blog/create_blog.html', title='New Blog',
                           form=form, legend='New Blog')
示例#6
0
文件: edit.py 项目: davidaccent/blog
    async def post(self, request):
        blog_id = request.path_params["blog_id"]
        blog = Blog.query.get_or_404(blog_id)

        data = await request.form()
        form = BlogForm(data, obj=blog)

        if not form.validate():
            template = "blog/blog_form.html"
            context = {"request": request, "object": blog, "form": form}
            return templates.TemplateResponse(template, context)

        blog.title = form.title.data
        blog.meta_description = form.meta_description.data
        blog.post_body = form.post_body.data
        blog.author = form.author.data
        blog.last_updated_by_id = request.user.id
        blog.is_live = form.is_live.data

        blog.save()

        return RedirectResponse(url=request.url_for("blog:blog_admin"),
                                status_code=302)
示例#7
0
    async def post(self, request):
        data = await request.form()
        form = BlogForm(data)

        if not form.validate():
            template = "blog/blog_form.html"
            context = {"request": request, "form": form}
            return templates.TemplateResponse(template, context)

        blog = Blog(
            title=form.title.data,
            meta_description=form.meta_description.data,
            author=form.author.data,
            post_body=form.post_body.data,
            is_live=form.is_live.data,
            created_by=request.user,
            last_updated_by=request.user,
        )

        blog.save()

        return RedirectResponse(url=request.url_for("blog:blog_admin"),
                                status_code=302)
示例#8
0
def update_blog(blog_id):
    blog = Blog.query.get_or_404(blog_id)
    form = BlogForm()
    if form.validate_on_submit():
        if form.picture.data:
            picture_file = save_picture(form.picture.data)
            blog.image_file = picture_file
        blog.city = form.city.data
        blog.category = form.category.data
        blog.title = form.title.data
        blog.summary = form.summary.data
        blog.story = form.story.data
        db.session.commit()
        flash(' Blog post has been updated!', 'success')
        return redirect(url_for('blog.blogn', blog_id=blog.id))
    elif request.method == 'GET':
        form.city.data = blog.city
        form.category.data = blog.category
        form.title.data = blog.title
        form.summary.data = blog.summary
        form.story.data = blog.story
    return render_template('blog/create_blog.html', title='Update Blog',
                           form=form, legend='Update Blog')
示例#9
0
def test_unique_contraints(blog):
    data = {"title": blog.title}
    form = BlogForm(DummyPostData(data))
    assert not form.validate()
    assert "title" in form.errors
示例#10
0
    async def get(self, request):
        form = BlogForm()

        template = "blog/blog_form.html"
        context = {"request": request, "form": form}
        return templates.TemplateResponse(template, context)