assets: add template tag to get URL property for CSS (#34812)
This commit is contained in:
parent
34f9b6f512
commit
d50ce40499
|
@ -57,6 +57,14 @@ def asset_url(*args, **kwargs):
|
|||
|
||||
return get_thumbnail(asset, geometry_string, **kwargs).url
|
||||
|
||||
@register.simple_tag
|
||||
def asset_css_url(*args, **kwargs):
|
||||
url = asset_url(*args, **kwargs)
|
||||
if url:
|
||||
return 'url(%s)' % url
|
||||
else:
|
||||
return 'none'
|
||||
|
||||
|
||||
@register.assignment_tag
|
||||
def get_asset(key):
|
||||
|
|
|
@ -150,20 +150,31 @@ def test_asset_template_tags():
|
|||
t = Template('''{% load assets %}{% get_asset "collectivity:banner" as banner %}{% if banner %}BANNER{% endif %}''')
|
||||
assert t.render(Context()) == ''
|
||||
|
||||
t = Template('''{% load assets %}{% asset_url "collectivity:banner" %}''')
|
||||
assert t.render(Context()) == ''
|
||||
t = Template('''{% load assets %}{% asset_css_url "collectivity:banner" %}''')
|
||||
assert t.render(Context()) == 'none'
|
||||
|
||||
t = Template('''{% load assets %}{% get_asset "collectivity:banner" as banner %}{% if banner %}BANNER{% endif %}''')
|
||||
Asset(key='collectivity:banner', asset=File(StringIO('test'), 'test.png')).save()
|
||||
assert t.render(Context()) == 'BANNER'
|
||||
|
||||
t = Template('''{% load assets %}{% asset_url "collectivity:banner" %}''')
|
||||
assert t.render(Context()) == '/media/assets/test.png'
|
||||
t = Template('''{% load assets %}{% asset_css_url "collectivity:banner" %}''')
|
||||
assert t.render(Context()) == 'url(/media/assets/test.png)'
|
||||
|
||||
page = Page(title='Home', slug='index', template_name='standard')
|
||||
page.save()
|
||||
|
||||
t = Template('''{% load assets %}{% asset_url page.picture "collectivity:banner" %}''')
|
||||
assert t.render(Context()) == '/media/assets/test.png'
|
||||
t = Template('''{% load assets %}{% asset_css_url page.picture "collectivity:banner" %}''')
|
||||
assert t.render(Context()) == 'url(/media/assets/test.png)'
|
||||
|
||||
page.picture = File(StringIO('test'), 'test2.png')
|
||||
page.save()
|
||||
t = Template('''{% load assets %}{% asset_url page.picture "collectivity:banner" %}''')
|
||||
assert t.render(Context({'page': page})) == '/media/page-pictures/test2.png'
|
||||
|
||||
# pass image to sorl.thumbnail
|
||||
|
|
Loading…
Reference in New Issue