Передача HTML Jinja из моделей / DB и Jinja в Jinja? - PullRequest
0 голосов
/ 13 октября 2018

Так что я пишу персональный сайт для себя и не хочу добавлять каждую страницу из просмотров и URL.Я пытаюсь сделать очень динамичный веб-сайт, на котором администраторы могут добавлять страницы из / admin

, но проблема сейчас заключается в том, когда я пытаюсь добавить jinja или html из моей базы данных с помощью шаблонов jinja.Джинджа видит их просто как str и напрямую выводит их в необработанном виде.

Я пытаюсь поместить html и jinja в jinja bcs. Я хочу создать редактор страниц на странице администратора и добавлять страницы с множеством картинок и тому подобным.без кодирования.Может быть, есть другой способ сделать это, тогда просто скажите мне, как это сделать.

Мой английский плохой, но коды все объяснят (я собираюсь перевести турецкие вещи с помощью # python comment, чтобы сделать его более понятным:

просмотров:

  from django.shortcuts import render
    from umut.models import *

    # Create your views here.

    def sayfa#page(request, sayfalinki#pagelink stands for pagename):
    içerik#content = Sayfalar.objects.get(baslik=sayfalinki)
    return render(request, "umut/umut-şablon.html" , {"içerik":içerik})

модель:

from django.db import models

# Create your models here.
class Sayfalar(models.Model):
 baslik#title = models.CharField(max_length=15)
 title = models.CharField(max_length=30)
 icerik#content = models.TextField(max_length=5000)

URL-адреса:

from django.urls import path, include
from . import views

urlpatterns = [
    #path('', views.anasayfa, name= 'anasayfa#mainpage'),
    path('<str:sayfalinki>', views.sayfa)
]

шаблон:

<!DOCTYPE html>
<html>

    <head>
        {% load static %}
        <link rel="stylesheet" type="text/css" href="{% static "umut/umut-style.css" %}">
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>{{içerik.title}}</title>
    </head>

    <body>
        <header>
            <h1 class="anabaslik">Umut Özsoy</h1>
        </header>
        <nav>
            {% for i in sayfalar %}
                <a href="{{i.link}}">{{i.isim}}</a>
            {% endfor %}
        </nav>
        <section>
        {{içerik.icerik}}
        </section>

    </body>

</html>

1 Ответ

0 голосов
/ 21 октября 2018

Передача html в переменную шаблона jinja ->

{{variable|safe}} #jinja's safe filter

или

создание безопасной области / блока ->

{%autoescape off%} blabla {%endautoescape%}

подробная информация: Django Doc Link

Переменная jinja в переменной jinja все еще не работает.

...