Как обслуживать статические файлы в Flask

[edit] matplotlib в настоящее время (2013-10) в версии 1.3.0, который включает в себя этот

. Эта способность была фактически добавлена, и вам нужна версия Subversion для нее. Вы можете увидеть пример кода здесь .

Я просто обновляюсь, чтобы сказать, что сейчас есть лучший пример . Тем не менее, нужна версия Subversion, хотя еще не было этой версии.

[edit] Matplotlib 0.99.0 RC1 был только что выпущен и включает эту возможность.

409
задан hughdbrown 17 December 2013 в 23:31
поделиться

2 ответа

Все ответы хороши, но что работало хорошо на меня, просто использует простую функцию send_file от Фляги. Это работает хорошо, когда просто необходимо отправить файл HTML как ответ, когда host:port/ApiName покажет вывод файла в браузере


@app.route('/ApiName')
def ApiFunc():
    try:
        return send_file('some-other-directory-than-root/your-file.extension')
    except Exception as e:
        logging.info(e.args[0])```

1
ответ дан Binoy S Kumar 29 August 2019 в 18:52
поделиться

Самый простой путь, создают статическую папку в основной папке проекта. Статическая папка, содержащая .css файлы.

основная папка

/Main Folder
/Main Folder/templates/foo.html
/Main Folder/static/foo.css
/Main Folder/application.py(flask script)

Изображение основной папки, содержащей статичный и шаблонных папок и фляги сценария

фляги

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def login():
    return render_template("login.html")

HTML (расположение)

<!DOCTYPE html>
<html>
    <head>
        <title>Project(1)</title>
        <link rel="stylesheet" href="/static/styles.css">
     </head>
    <body>
        <header>
            <div class="container">
                <nav>
                    <a class="title" href="">Kamook</a>
                    <a class="text" href="">Sign Up</a>
                    <a class="text" href="">Log In</a>
                </nav>
            </div>
        </header>  
        {% block body %}
        {% endblock %}
    </body>
</html>

html

{% extends "layout.html" %}

{% block body %}
    <div class="col">
        <input type="text" name="username" placeholder="Username" required>
        <input type="password" name="password" placeholder="Password" required>
        <input type="submit" value="Login">
    </div>
{% endblock %}
0
ответ дан 22 November 2019 в 23:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: