如何渲染模板中函数get_image返回的列表dd = []中的项目?该列表包含函数返回的文件列表。
只是想添加 index.html 在 project_folder/inc/html 下,其中图像在 project_folder/inc/img & settings 下,views & url 在 project_folder
索引.html
<ul>
{% for object in dd %}
<li><img src="views.img_dir{{% views.img_dir.object.get_absolute_url %}}"></li>
<li><img src="views.img_dir{{% views.img_dir.dd.get_absolute_url %}}"></li>
{% endfor %}
</ul>
如果我试试这个:
<ul>
{% for object in dd %}
<li><img src="{{settings.img_dir }}object.get_absolute_url"></li>
<li><img src="{{settings.img_dir }}{{%object%}}"></li>
{% endfor %}
</ul>
我得到一个 TemplateSyntaxError无法解析剩余部分:来自 '%object%' 的 '%object%'
视图.py
SETTINGS_PATH = os.path.normpath(os.path.dirname(__file__))
img_dir = os.path.join(SETTINGS_PATH, "inc/img/")
def get_image(request):
for file in os.listdir(img_dir):
h = []
h.append(file)
for l in h:
r = l.endswith('.jpg') or l.endswith('.png') or l.endswith('.gif')
if r == True:
dd = []
dd.append(l)
return render_to_response('index.html', dd)
网址.py
urlpatterns = patterns('',
url(r'^$', get_image),
设置.py
PROJECT_ROOT = os.path.abspath(os.path.dirname(__file__))
TEMPLATE_DIRS = (
os.path.join(PROJECT_ROOT, "inc/html"),
)