0

テンプレートで Flask の特定の css ファイルを使用するにはどうすればよいでしょうか?

admin.html = admin.css  
user.html = user.css

Flask のドキュメントを見てきましたが、意味がありませんか?

4

2 に答える 2

5

基本テンプレートの <head> セクションを子テンプレートで上書きできます。したがって、すべてのユーザー ページは base.html テンプレートの css ファイルを使用し、admin.html のみが他のファイルを使用します。これはhttp://flask.pocoo.org/docs/patterns/templateinheritance/#template-inheritanceに記載されています

編集: おそらくこれを使用できます: すべてのページは base.html から派生し、base.css を使用します。user.html と admin.html のみが head セクションを上書きし、base.css と特定の admin.css / user.css を含めます。

例 :

base.html:

     <!doctype html>
     <html>
     <head>
      {% block head %}
        <link rel="stylesheet" href="{{ url_for('static', filename='base.css') }}">
      {% endblock %}
      </head>
      <body>
      <div id="content">{% block content %}{% endblock %}</div>

     </body>
     </html>

admin.html:

    {% extends "base.html" %}
    {% block head %}
      <link rel="stylesheet" href="{{ url_for('static', filename='base.css') }}">
      <link rel="stylesheet" href="{{ url_for('static', filename='admin.css') }}">
    {% endblock %}
    {% block content %}
     content goes here
    {% endblock %}

user.html:

    {% extends "base.html" %}
    {% block head %}
      <link rel="stylesheet" href="{{ url_for('static', filename='base.css') }}">
      <link rel="stylesheet" href="{{ url_for('static', filename='user.css') }}">
    {% endblock %}
    {% block content %}
     content goes here
    {% endblock %}

編集: css ファイルを static/ のサブディレクトリに保存する場合は、次のようにリンクを記述する必要があります。

      <link rel="stylesheet" href="{{ url_for('static', filename='css/base.css') }}">
于 2013-01-12T19:22:18.757 に答える
0

使用する css ファイルを変数としてテンプレートに渡すことができます。

{'css_file': 'admin.css'}

次に、テンプレートで使用します。

<link rel="stylesheet" href="/css/{{ css_file }}" />
于 2013-01-12T19:08:06.523 に答える