Flask中踩到的坑 2019-05-03

2019-05-03  本文已影响0人  许桉衫
  1. 应用了flask-bootstrap后,如何再通过css修改其样式?为社么我添加了css文件,仍然是boostrap的样式?

    A:css样式是有优先级的,优先级是根据selector来进行判定,不同的selector有不同的权重。

  1. flask的模板,在base中加入styles block来添加css文件后,bootstrap样式消失?

    A:由于base.html是继承自bootstrap/base.html。在base.html中,开头部分是有{% extends ‘bootstrap/base.html %},所以如果直接在{% block styles %}中加入css文件的地址,或者使用url_for方法,会导致整个styles block被重写。正确方法应该是:


{% block styles %}

{{super() }}

<link href="your css file" rel='stylesheet" type="text/css">

{% endblock}

  1. 为什么修改静态的CSS和JS,网页不能实时更新?
    A:原因其中一个是因为浏览器的缓存问题,如果不清除之前的CSS文件的缓存的话,修改的样式是不会刷新的。每次修改后,在浏览器中用CTRL+F5查看。

https://stackoverflow.com/questions/21714653/flask-css-not-updating

  1. 如何通过按钮提交Post请求,只执行代码而不对网页跳转或刷新:
    A :在return中返回("", 204)即可。 204表示正确接收到请求,但不对当前网页进行更新。
    举例:
@route.app("\"):
def test_func():
  code_blocks
  return ("", 204)
  1. 页面中存在多个表单时,如何分别哪个表单进行了提交?
    A: 可以通过 myForm.FiledName.data进行验证。FiledName是按钮的名称,当该按钮按下时,该filed的data会变为True,则此刻就能分辨哪个表单进行的提交。
上一篇下一篇

猜你喜欢

热点阅读