我正在尝试找到一个与 Flask 的 url_for 等效的 django 方法。
我不是在寻找 jinja 的等价物(如此处所示)——我说的是房子的 python 一侧
在我的 Flask 应用程序中,我发送一个 HTML 字符串,如下所示:
my_picture = '<img src="{}">'.format(url_for('static', filename=r'images/myPic.jpg'))
Run Code Online (Sandbox Code Playgroud)
我知道我可以在 html 中执行此操作,<img src={{ my_picture }}>但这不是我的目标。
我一直在做的是
from my_project.settings import STATIC_URL
my_picture = '<img src="{}">'.format(os.path.join('static', 'images/myPic.jpg'))
Run Code Online (Sandbox Code Playgroud)
但必须有更好的方法
谢谢!
这取决于您要寻找什么。
如果你想获取静态文件的 URL ,你可以使用以下位:
from django.templatetags.static import static
url = static('images/myPic.jpg')
Run Code Online (Sandbox Code Playgroud)
如果您想获取 URL 配置中指定 URL 的 URL 路径,可以使用 URLreverse 解析器。假设您的 URL 配置如下所示:
如果您的 URL 配置如下所示:
from example import views
path('my/fancy/example/', views.example, name='my-example-view')
Run Code Online (Sandbox Code Playgroud)
然后你可以通过以下方式获取 URL:
from django.urls import reverse
url = reverse('my-example-view') # will return "my/fancy/example/"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9818 次 |
| 最近记录: |