如何使用Jinja和Flask从我的图像文件夹动态渲染图像?

Dan*_*bio 10 python flask

我正在使用Flask来学习Python并创建一个我想要制作一段时间的玩具应用程序.我遇到了标准文件上传的特定功能问题.我想要做的是尝试根据特定模型从我的图像文件夹动态渲染图像,但我似乎在尝试字符串插值时遇到问题.

这是我的观看代码:

<h1>List of Employees</h1>

{% if employees %}
    {% for employee in employees: %}
      <p>{{ employee.name }}</p>
      <p>{{ employee.title }}</p>
      <p>{{ employee.email }}</p>
      <p>{{ employee.department }}</p>

      # How do I use Jinja and python to interpolate this so I can 
      # grab the correct image
      <img src="static/images/" + {{employee.profile_image }} alt={{ employee.name }} width="120" height="90">{{ employee.profile_image }}</img>
    {% endfor %}
  {% endif %}
Run Code Online (Sandbox Code Playgroud)

它应该非常简单.我被红宝石和铁轨宠坏了......帮助将不胜感激.谢谢.

gro*_*rld 19

您的img代码应如下所示

<img src="static/images/{{ employee.profile_image }}" alt={{ employee.name }} width="120" height="90" />
Run Code Online (Sandbox Code Playgroud)

假设employee.profile_image是相对于的路径static/images/

如果没有profile_image值但你想显示默认值,你也可以default像这样使用Jinja2的过滤器.

<img src="static/images/{{ employee.profile_image | default('profile.jpg') }}" alt={{ employee.name }} width="120" height="90" />
Run Code Online (Sandbox Code Playgroud)