【发布时间】:2014-08-22 21:23:42
【问题描述】:
我正在尝试制作一个界面,用户可以在其中编辑他们的“用户样式”css 表并进行预览。如果他们喜欢他们所看到的,他们可以提交。
这是我目前所做的,作为一个非常基本的初步草图:
class EditStylesForm(Form):
""" a form to edit CSS styles """
css = TextAreaField()
submit = SubmitField('Commit Changes')
在视图中:
@admin.route('/styles', methods=['GET', 'POST'])
def styles():
""" render a form in which they can render stylesheets """
try:
with admin.open_resource('static/scss/user_styles.css') as f:
form = EditStylesForm(css=f.read())
except IOError:
form = EditStylesForm()
if form.validate_on_submit():
with open(os.path.join(current_app.root_path, 'static/scss/user_styles.css'), mode="w") as f:
f.write(form.css.data)
return render_template('admin/styles.html', form=form)
(是的,我知道这是不安全的,可以改进)。这将使用文本区域中显示的 css 文件写入一个文件。
但是,我最理想的做法是在提交 CSS 并将其添加到网站样式表之前对其进行预览。我想这样的事情最好在前端处理。
有没有办法为样式制作“预览”视图?
【问题讨论】:
标签: javascript jquery python python-3.x flask