繁体   English   中英

Django 视图中的动态模板

[英]Dynamic Templates in Django Views

我想知道是否可以从urls.py将模板名称动态插入 Django 视图中。

也就是说,假设我有一个应用程序,其全部目的是充当各种 static 登录页面的容器。 计划是创建这个应用程序,并在它的urls.py中有各种条目对应到各种登录页面的路径。 每个页面都有一个单独的.html对应。

问题是是否可以为所有这些模板只编写一个(基于类或其他)视图,或者是否需要为每个页面创建一个视图?

Django 版本 2.1-2.2

PS如果有另一种简洁的方式来完成类似的事情,我全神贯注。

这可以通过 URL 中的变量和基于简单 function 的视图来实现

网址.py

from django.urls import path
from .views import landing_page_view

urlpatterns = [
    path('<slug:template_name>/', landing_page_view, name='landing_page_view'), # Your urls will be <host>/template_name
]

视图.py

from django.shortcuts import render

def landing_page_view(request, template_name):
    return render(request, f'{template_name}.html') # Render view with the template corresponding with the template_name in the url 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM