2014-03-02 2 views
0

Я использую водяной знак django для водяных знаков на моем сайте images.I завершил все настройки в соответствии с этим https://pypi.python.org/pypi/django-watermark/.django water mark процедура в загруженных изображениях

Вот мой settings.py файл (только изменение Сделали связано с водяным знаком показывает здесь)

INSTALLED_APPS = (
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.sites', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 

    'django.contrib.admin', 

    'photo', 
    'userena', 
    'guardian', 
    'easy_thumbnails', 
    'accounts', 

    'paypal.standard.ipn', 
    'myprofile', 
    'watermarker', 

)

WATERMARKING_QUALITY = 85 
WATERMARK_OBSCURE_ORIGINAL = False 

сейчас, по ссылке выше я загрузил прозрачный PNG, а именно, медицинское искусство в таблице водяных знаков моей базы данных, теперь я применил водяной знак в следующем шаблоне, подобном этому ...

{% extends 'base.html'%} 
{% load watermark %} 
{% block title %}ShutterStock{%endblock%} 


{% block content %} 



<ul> 

{% for photo in photo_list%} 
    <li><a href = "{% url 'download_image' photo.id %}"><img src={{photo.photo.url|watermark: 'Medical Art,opacity=40,tile=1'}} alt = 'sample photo' width = '200' height = '200'/></li></a> 
{% endfor %} 
</ul> 





{% endblock %} 

в упоминании, изображения я показываю это закачано image.But я получаю следующее сообщение об ошибке после запуска веб-сайта, то есть

IOError в/showphoto/

декодера молнии не доступен

+0

Попытка удаления пространства и с помощью '" 'кавычки ... –

ответ

0

Удалите пространство между filter и аргументом:

{{photo.photo.url|watermark: 'Medical Art,opacity=40,tile=1'}} 
          ^

Пример:

  • без пространства:

    >>> from django.template import Template, Context 
    >>> Template('''{{nothing|default:'HELLO'}}''').render(Context({})) 
    u'HELLO' 
    
  • с пространством:

    >>> Template('''{{nothing|default: 'HELLO'}}''').render(Context({})) 
    Traceback (most recent call last): 
        File "<console>", line 1, in <module> 
        File "/home/falsetru/.virtualenvs/django16/local/lib/python2.7/site-packages/django/template/base.py", line 125, in __init__ 
        self.nodelist = compile_string(template_string, origin) 
        File "/home/falsetru/.virtualenvs/django16/local/lib/python2.7/site-packages/django/template/base.py", line 153, in compile_string 
        return parser.parse() 
        File "/home/falsetru/.virtualenvs/django16/local/lib/python2.7/site-packages/django/template/base.py", line 254, in parse 
        filter_expression = self.compile_filter(token.contents) 
        File "/home/falsetru/.virtualenvs/django16/local/lib/python2.7/site-packages/django/template/base.py", line 360, in compile_filter 
        return FilterExpression(token, self) 
        File "/home/falsetru/.virtualenvs/django16/local/lib/python2.7/site-packages/django/template/base.py", line 572, in __init__ 
        self.args_check(filter_name, filter_func, args) 
        File "/home/falsetru/.virtualenvs/django16/local/lib/python2.7/site-packages/django/template/base.py", line 641, in args_check 
        (name, len(nondefs), plen)) 
    TemplateSyntaxError: default requires 1 arguments, 0 provided 
    
+0

теперь показывает эту ошибку IOError в/showphoto/ декодер zip недоступен – zogo

+0

@zogo, похоже, что th e возникает ошибка PIL. Проверьте, ссылается ли URL на действительный URL-адрес изображения. – falsetru

+1

@zogo, см. [Результат поиска google для 'IOError: декодер zip недоступен'] (http://www.google.com/search?q=" IOError% 3A + декодер + zip + not + available "). – falsetru

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