|
@@ -1,9 +1,8 @@
|
|
|
-from flask import render_template, Blueprint, flash, request, redirect, url_for
|
|
|
+from flask import render_template, Blueprint, request, redirect, url_for
|
|
|
import requests
|
|
|
from backstage.blogs.forms import BlogCreateForm
|
|
|
-from backstage.utils import translate, get_now_time
|
|
|
-from time import sleep
|
|
|
-from backstage.utils.routes import remove_content
|
|
|
+from backstage.utils import get_now_time
|
|
|
+from backstage.utils.routes import create_content, remove_content, get_trans_title_url_name
|
|
|
|
|
|
blogs_app = Blueprint('blogs', __name__)
|
|
|
|
|
@@ -20,10 +19,9 @@ def blog_list():
|
|
|
form=BlogCreateForm())
|
|
|
|
|
|
|
|
|
-@blogs_app.route('/backstage/create/blog', methods=['POST'])
|
|
|
+@blogs_app.route('/backstage/blog/create/', methods=['POST'])
|
|
|
def create():
|
|
|
form = BlogCreateForm()
|
|
|
- url_name = translate(form.title.data).replace(' ', '_')
|
|
|
front_matter = '''---
|
|
|
title: "{}"\n\
|
|
|
date: {}\n\
|
|
@@ -36,22 +34,13 @@ categories: ["{}"]\n\
|
|
|
get_now_time(),
|
|
|
'false',
|
|
|
'blog',
|
|
|
- '/blog/{}'.format(url_name),
|
|
|
+ '/blog/{}'.format(get_trans_title_url_name(form.title.data)),
|
|
|
form.image.data.filename,
|
|
|
form.categories.data)
|
|
|
data = {'frontMatter': front_matter,
|
|
|
'name': request.form['title'],
|
|
|
'type': form.categories.data}
|
|
|
- new_response = requests.post('http://127.0.0.1:5000/api/new_content', json=data)
|
|
|
- if new_response.status_code == 200:
|
|
|
- requests.post(
|
|
|
- 'http://127.0.0.1:5000/api/upload/static/img?type=blog&filename={}'.format(
|
|
|
- form.image.data.filename), files={'image': form.image.data})
|
|
|
- sleep(0.5)
|
|
|
- return redirect(url_for('editor.editor', url='/blog/{}'.format(url_name)))
|
|
|
- else:
|
|
|
- flash('新增文章失敗', 'danger')
|
|
|
- return redirect(url_for('blogs.blog_list'))
|
|
|
+ return create_content(data, form.image.data, 'blog')
|
|
|
|
|
|
|
|
|
@blogs_app.route('/backstage/blog/remove', methods=['POST'])
|