相关疑难解决方法(0)

如何在烧瓶响应中返回图像?

例如,这个URL:

http://example.com/get_image?type=1
Run Code Online (Sandbox Code Playgroud)

应该返回image/gifMIME类型的响应.我有两个静态.gif图像,
如果type是1,它应该返回ok.gif,否则返回error.gif.如何在烧瓶中做到这一点?

python flask

95
推荐指数
1
解决办法
8万
查看次数

Flask中的静态文件 - robot.txt,sitemap.xml(mod_wsgi)

是否有任何聪明的解决方案可以在Flask的应用程序根目录中存储静态文件.robots.txt和sitemap.xml应该在/中找到,所以我的想法是为它们创建路由:

@app.route('/sitemap.xml', methods=['GET'])
def sitemap():
  response = make_response(open('sitemap.xml').read())
  response.headers["Content-type"] = "text/plain"
  return response
Run Code Online (Sandbox Code Playgroud)

必须有更方便的东西:)

python static mod-wsgi robots.txt flask

91
推荐指数
7
解决办法
4万
查看次数

应用程序没有拿起.css文件(flask/python)

我正在渲染一个模板,我试图用外部样式表设置样式.文件结构如下.

/app
    - app_runner.py
    /services
        - app.py 
    /templates
        - mainpage.html
    /styles
        - mainpage.css
Run Code Online (Sandbox Code Playgroud)

mainpage.html看起来像这样

<html>
    <head>
        <link rel= "stylesheet" type= "text/css" href= "../styles/mainpage.css">
    </head>
    <body>
        <!-- content --> 
Run Code Online (Sandbox Code Playgroud)

我的风格都没有应用.是否与html是我正在渲染的模板这一事实有关?python看起来像这样.

return render_template("mainpage.html", variables..)
Run Code Online (Sandbox Code Playgroud)

我知道这很有效,因为我仍然可以渲染模板.但是,当我试图将样式代码从html的"head"标签中的"样式"块移动到外部文件时,所有样式都消失了,留下了一个简单的html页面.有人看到我的文件结构有任何错误吗?

html css python templates flask

80
推荐指数
5
解决办法
8万
查看次数

Flask:单击按钮下载csv文件

我刚开始使用Flask/Python.我想要实现的是我的HTML中有一个下载按钮,它调用以下函数:

function downloadPlotCSV() {
        $.ajax({
            url: "/getPlotCSV",
            type: "post",
            success: function(data) {
                dataPlot = JSON.parse(data);
                console.log(dataPlot);
            }
        });
    }
Run Code Online (Sandbox Code Playgroud)

不完整的烧瓶代码是:

@app.route('/getPlotCSV', methods = ['POST'])
def plotCSV():
    data = open("outputs/Adjacency.csv")
Run Code Online (Sandbox Code Playgroud)

我面临的问题是我找不到下载此csv文件或将其作为JSON字符串返回的方法,因此我可以使用Javascript下载它.知道如何将其作为JSON发送或者通过Flask本身下载它吗?什么是最好的方式?

javascript python csv json flask

40
推荐指数
2
解决办法
4万
查看次数

本地Flask实例中有多个静态路径

是否可以为我的本地dev Flask实例添加更多静态路径?我想有一个默认static文件夹,用于存储网站和另一个文件夹的js/css/images文件,例如designs保存我的特定资产.如果存在更好的解决方案,我不想将designs文件夹放在里面static.

html python flask

39
推荐指数
2
解决办法
2万
查看次数

Flask,使用send_static_file继续获取404服务静态文件

我按照如何在Flask中提供静态文件的说明,但仍然无法使其工作.

这是我的项目结构:

Project_path  
 |
 +--app
 |  |
 |  +--main.py
 +--static
    |
    +--js
       |
       +--jquery-1.11.2.min.js
Run Code Online (Sandbox Code Playgroud)

这是main.py:

@app.route('/js/<path:path>')
def serve_static(path):
    root_dir = os.path.dirname(os.getcwd())
    print(os.path.join(root_dir, 'static', 'js', path))
    return app.send_static_file(os.path.join(root_dir, 'static', 'js', path))
Run Code Online (Sandbox Code Playgroud)

这是index.html:

  ...
  <script type="text/javascript" src="/js/jquery-1.11.2.min.js"></script>
  ...
Run Code Online (Sandbox Code Playgroud)

而当我访问/,我可以看到在屏幕上打印javascript文件的正确路径
Project_path/static/js/jquery-1.11.2.min.js.

但是,我还是

127.0.0.1 - - [22/Dec/2014 11:26:30] "GET /js/jquery-1.11.2.min.js HTTP/1.1" 404 -
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏.

编辑
在逐步完成该send_static_file方法之后,我会发现发生了什么.基本上,我不应该使用abspath作为参数,烧瓶有一个判断send_static_file:

if os.path.isabs(filename) or \
   filename == '..' or \
   filename.startswith('../'):
    raise NotFound()
Run Code Online (Sandbox Code Playgroud)

因为filename …

python flask

28
推荐指数
2
解决办法
4万
查看次数

Flask蓝图静态目录不起作用?

根据Flask自述文件,可以访问蓝图静态文件blueprintname/static.但由于某种原因,它不起作用.

我的蓝图是这样的:

  • app/frontend/views.py :

    frontend = Blueprint('frontend', __name__, 
                         template_folder='templates',
                         static_folder='static')
    
    @frontend.route('/') etc...
    
    Run Code Online (Sandbox Code Playgroud)
  • app/frontend/js/app.js :我的javascript

  • 在Flask应用程序中注册的蓝图(路线工作和一切)

当我去的时候abc.com/frontend/static/js/app.js,它只给出了404.

当我按照Flask自述文件获取我的静态文件时:

<script src="{{url_for('frontend.static', filename='js/app.js')}}"></script>
Run Code Online (Sandbox Code Playgroud)

输出是

<script src="/static/js/app.js"></script>
Run Code Online (Sandbox Code Playgroud)

哪个也行不通.我的根app/static/文件夹中没有任何内容.

我无法访问我的蓝图中的任何静态文件!烧瓶读我说它应该工作!

admin = Blueprint('admin', __name__, static_folder='static')
Run Code Online (Sandbox Code Playgroud)

默认情况下,路径的最右边部分是它在Web上公开的位置.由于该文件夹在此处称为静态,因此它将在蓝图+/static的位置可用.假设蓝图已注册为/ admin,静态文件夹将位于/ admin/static.

python flask

25
推荐指数
4
解决办法
2万
查看次数

无法从flask中的send_from_directory()检索文件

我有一个引用这样的静态对象的html文件

<img src="img/snacks.png">
<link href="css/bluestrap.css" rel="stylesheet">
Run Code Online (Sandbox Code Playgroud)

因此浏览器尝试调用此通道并且烧瓶无法执行此操作

http://127.0.0.1:5000/img/snacks.png  
Run Code Online (Sandbox Code Playgroud)

跨多个文件有很多这样的引用,因此无法更改引用.我如何从FLASK提供这些静态文件

我已将所有这些静态文件复制到'static'文件夹并尝试了这个

@app.route('/<path:filename>')  
def send_file(filename):  
      return send_from_directory('/static', filename)
Run Code Online (Sandbox Code Playgroud)

但是这不起作用,有没有其他方法可以做到这一点?或者我做错了什么?

python flask

16
推荐指数
3
解决办法
4万
查看次数

python flask在html页面上显示图像

我试图传递一个图像的文件名并在模板上呈现它,虽然我传递的实际名称通过它不显示在页面上

@app.route('/', methods=['GET','POST'])
@app.route('/start', methods=['GET','POST'])
def start():
person_to_show = 'tim'
profilepic_filename = os.path.join(people_dir, person_to_show, "img.jpg")
return render_template('start.html',profilepic_filename  =profilepic_filename )
Run Code Online (Sandbox Code Playgroud)

例如:profilepic_filename = /data/tim/img.jpg我试过了

{{profilepic_filename}}
<img src="{{ url_for('data', filename='tim/img.jpg') }}"></img>
Run Code Online (Sandbox Code Playgroud)

我也试过了

<img src="{{profilepic_filename}}"></img>
Run Code Online (Sandbox Code Playgroud)

两者都不奏效

python html5 flask flash-message

12
推荐指数
1
解决办法
4万
查看次数

python flask - 提供静态文件

我正在尝试使用flask来提供静态文件.我不知道如何使用url_for函数.生成动态内容的所有路由工作正常,我已导入url_for,但是当我有这个代码时:

@app.route('/')
def home():
    return url_for('static', filename='hi.html')
Run Code Online (Sandbox Code Playgroud)

随着我的'hi.html'文件(其中有一些基本的html)坐在目录静态中,我加载页面时得到的字面意思是:

/static/hi.html

我只是错误地使用url_for吗?

python flask

11
推荐指数
2
解决办法
1万
查看次数

标签 统计

flask ×10

python ×10

html ×2

css ×1

csv ×1

flash-message ×1

html5 ×1

javascript ×1

json ×1

mod-wsgi ×1

robots.txt ×1

static ×1

templates ×1