我可以将模板保存在我的数据库中并从 django-admin 编辑它们吗? 我的想法是为模板创建一个模型:
class DbTemplate(models.Model):
css_class = models.CharField(max_length=200)
name = models.CharField(max_length=200)
content = models.TextField()
class Meta:
verbose_name = "Database Template"
verbose_name_plural = "Database Templates"
def __str__(self):
return self.name
并在 django-admin 中注册:
from .models import DbTemplate
admin.site.register(DbTemplate)
在我的 urls.py 中为 r"^page/"设置加载正确模板的默认 View ,这可能吗?
谢谢!
最佳答案
您可能需要render
在您的 View 中手动模板并返回结果 HttpResponse
。这是一个粗略的示例(您应该根据您的用例进行修改):
from django.template import Context, Template
from django.http import HttpResponse
def my_view(request):
...
context = {'value': something, 'another_var': something_else}
# Here, instead of returning `render`, render the template using the context manually
template_content = DbTemplate.objects.get(name='my_template').content
template = Template(template_content)
return HttpResponse(template.render(Context(context)))
关于python - Django - 从 django admin 编辑模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35551206/