jinja2 设置背景图片
jinja2 set background image
我正在尝试使用 jinja2 设置背景图片。我已经设法从我的开发服务器提供我的文件,并且可以 post 文档中的图像,但我希望它形成一个漂亮的背景,其他所有内容都在上面。
举个例子,我试过这个:
{% extends "layout.html" %}
{% block body %}
{% if current_user.is_authenticated %}
{% if commPageData.background_image %}
<body background="{{'/images/'+commPageData.background_image}}">
{% else %}
<body>
{% endif %}
A thing
</body>
我有一个 css 文件和一个提供模板默认行为的布局文件。我怎样才能拥有我所服务的漂亮背景图片?
您似乎试图告诉前端使用应用程序路由,但没有向其传递正确的命令。我假设您正在使用 Flask。真的,有两种方法(我能想到)来切这个面包,这取决于你。第一个是仅使用标准 html 而不是嵌入 python 来路由应用程序以查找文件,看起来像:
<body background="/path/to/image.jpg">
但是,如果您想利用框架和模板,那么您应该使用内置方法 url_for
看起来像这样:
<body background="{{ url_for('static', filename=commPageData.background_image) }}">
'static' 是此图像所在的应用程序中的目录。
现在,我不确定 commPageData.background_image 在您的应用程序中来自何处。我的代码片段假设它被用作一个值,它会识别它是否传递回逻辑,如果这有意义,并且它需要在你告诉 url_for 方法查找它的地方,即使是动态生成的。如果您确实有特定的图像要渲染为背景,则需要适当指定:
<body background="{{ url_for('static', filename='image.jpg') }}">
当然,已在 HTML5 中弃用,并且可能无法在许多浏览器中正确呈现。更喜欢使用 CSS 而不是
<body style="background:url({{'images/'+commPageData.background_image}});">
或直接将其放入您的 CSS 文件
我正在尝试使用 jinja2 设置背景图片。我已经设法从我的开发服务器提供我的文件,并且可以 post 文档中的图像,但我希望它形成一个漂亮的背景,其他所有内容都在上面。
举个例子,我试过这个:
{% extends "layout.html" %}
{% block body %}
{% if current_user.is_authenticated %}
{% if commPageData.background_image %}
<body background="{{'/images/'+commPageData.background_image}}">
{% else %}
<body>
{% endif %}
A thing
</body>
我有一个 css 文件和一个提供模板默认行为的布局文件。我怎样才能拥有我所服务的漂亮背景图片?
您似乎试图告诉前端使用应用程序路由,但没有向其传递正确的命令。我假设您正在使用 Flask。真的,有两种方法(我能想到)来切这个面包,这取决于你。第一个是仅使用标准 html 而不是嵌入 python 来路由应用程序以查找文件,看起来像:
<body background="/path/to/image.jpg">
但是,如果您想利用框架和模板,那么您应该使用内置方法 url_for
看起来像这样:
<body background="{{ url_for('static', filename=commPageData.background_image) }}">
'static' 是此图像所在的应用程序中的目录。
现在,我不确定 commPageData.background_image 在您的应用程序中来自何处。我的代码片段假设它被用作一个值,它会识别它是否传递回逻辑,如果这有意义,并且它需要在你告诉 url_for 方法查找它的地方,即使是动态生成的。如果您确实有特定的图像要渲染为背景,则需要适当指定:
<body background="{{ url_for('static', filename='image.jpg') }}">
当然,已在 HTML5 中弃用,并且可能无法在许多浏览器中正确呈现。更喜欢使用 CSS 而不是
<body style="background:url({{'images/'+commPageData.background_image}});">
或直接将其放入您的 CSS 文件