我在使用我的Flask应用程序获得降价时遇到问题。我已经通过pip导入了降价扩展。我有一个问题,jinja2 {%filter markdown%}表现得很奇怪。它将我的降价包装在预标签中。但是,如果我直接将md文本传递给模板{{'#text'| markdown}}它会正确解析字符串。我猜测降价过滤器没有传递给Jinja,但我不知道如何评估或解决这个问题。有没有其他人遇到这个?
FLASK
from flask_mikasa import Mikasa
app = Flask(__name__)
Misaka(app)
@app.route('/')
def index():
index_content = Index().get(Index.active == 1)
return render_template('index.html', index_content=index_content)
MD IN INDEX.HTML
{% filter markdown %}
<h1>Page for: {{ name }}</h1>
![Company Logo][logo]
# {{ index_content.main_title }}
{{ index_content.main_text }}
## {{ index_content.column1_title }}
{{ index_content.column1_text }}
[Read More](http://google.com)
## {{ index_content.column2_title }}
{{ index_content.column2_text }}
[Read More](http://google.com)
## {{ index_content.column3_title }}
{{ index_content.column3_text }}
[Read More](http://google.com)
[logo]:{{ url_for('static', filename='logo.jpg')}}
{% endfilter %}
输出:
html: opening_pre_tag
html: opening_code_tag
<h1>Page for: </h1>
![Company Logo][logo]
# Header
## Content Title 1
Lorem Ipsum
[Read More](http://google.com)
## Content Title 2
lorem ipsum
[Read More](http://google.com)
## Content Title 3
Lorem ipsum...
[Read More](http://google.com)
[logo]:/static/logo.jpg
html: closing_code_tag
html: closing_pre_tag
无论其
{{ '#title' | markdown }}
将输出
<h1>title</h1>
答案 0 :(得分:1)
好的,所以{%filter markdown%}需要与降价内容位于同一标签行中。轻松修复但令人沮丧的过程。
即
{% filter markdown %}
# Title
content
List:
* a
* b
* c
{% endfilter %)
VS
{% filter markdown %}
# Title
content
List:
* a
* b
* c
{% endfilter %}