2016-11-26 3 views
0

Итак, я изучаю Jinja и пытаюсь использовать функцию расширения, чтобы иметь возможность перезаписывать блок новым контентом, но он не работает.Переписывающие блоки в jinja

home.html

 {% block mainBlock %} 
    <div id="newNewsCont"> 
     <div id="leftCont"> 
     <h2> Tesla Model 3 </h2> 
     <p> Model 3 combines real world range, performance, safety and spaciousness into a premium saloon that only Tesla can build. Our most affordable range yet, Model 3 acheives 215 miles of rage per charge while starting at only 35,000 USD before incentives. Model 3 is designed to attain the highest safety ratings in every category. </p> 
     </div> 

     <div id="rightCont"> 
     <h2> Reliant Robin LX 3DR 0.9 </h2> 
     <p> 2 keys, cherry bomb exhaust, this car turns heads, just had brand new custom made interior fitted, with sound proofing under carpets, just had a full respray in renault 5 gt turbo pearl white </p> 
     </div> 
    </div> 
    {%endblock%} 

Я хотел переписать его с помощью list.html

{% extends "home.html" %} 

{% block mainBlock %} 
    {% for item in cars %} 
     <li> {{ item }}</li> 
    {% endfor %} 

{%endblock%} 

server.py

import os 
from flask import Flask, redirect, request, render_template 

DATABASE = 'database.db' 


app = Flask(__name__) 

ALLOWED_EXTENSIONS = set(['txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif']) 

@app.route("/") 
def home(): 
return render_template('list.html', msg = '') 

@app.route("/ListCars") 
def cars(): 
cars = ['tesla','reliant robin','Transit Van'] 
return render_template('list.html', cars = cars) 

if __name__ == "__main__": 
app.run(debug=True) 
+0

Что именно вы подразумеваете под «нерабочим»? Вы можете взглянуть на раздел Jinja2 Inheritance http://jinja.pocoo.org/docs/dev/templates/#template-inheritance –

+1

О, я столько раз читал эту страницу, но мне это просто не имеет смысла , Я хочу, чтобы содержимое mainblock в list.html перезаписывало содержимое mainblock в home.html – Shadowsista

+0

Каков результат при загрузке list.html? –

ответ

0

если вы хотите сохранить home.html дизайн для list.html:

list.html

{% block mainBlock %} 
{{super()}} 
... 
{%endblock%} 

, если это не то, что вы хотите, то напишите точную проблему, потому что ваш код должен работать нормально.

Смежные вопросы