一个django模板标记库,它允许下载外部图像,将它们存储在本地,并将本地存储图像的本地路径返回到所需的上下文变量

django-eximagination的Python项目详细描述


直接从模板获取外部图像。

Django模板标记库,允许下载外部图像、存储 它们在本地并将本地存储图像的本地路径返回到所需的 上下文变量,以及图像的widthheight属性 取来。在给定时间(设置为 设置)。

例如,您可以使用此应用程序解决显示 混合内容(从http和https源加载的资产)。

先决条件

  • Django 1.8、1.9、1.10
  • python>;=2.7,>;=3.4

安装

  1. 安装django-eximagination

pypi上的最新稳定版本:

pip install django-eximagination

来自Github的最新稳定版本:

pip install https://github.com/barseghyanartur/django-eximagination/archive/stable.tar.gz
  1. eximagination添加到INSTALLED_APPS
INSTALLED_APPS=(# ...'eximagination',# ...)
  1. 配置

默认情况下,django-eximagination希望您的文件存储在 /media/external_images目录。如果位置不同,请重新定义 在django设置中的目录中,确保路径是可写的,并且 WWW数据(或任何适用的数据)有权写入其中。

importosBASE_DIR=os.path.dirname(os.path.dirname(__file__))MEDIA_ROOT=os.path.join(BASE_DIR,'..','..','media')EXIMAGINATION_MEDIA_ROOT=os.path.join(MEDIA_ROOT,'external_images')EXIMAGINATION_MEDIA_URL='/media/external_images'EXIMAGINATION_MEDIA_RELATIVE_ROOT='external_images/'# After 30 days we re-fetch the file anyway.EXIMAGINATION_EXPIRATION_INTERVAL=2592000

用法示例(在django模板中)

请参阅example directory中的工作 代码示例。

示例1:

{% load eximaginate %}

<imgsrc="{{ MEDIA_URL }}{% eximaginate 'http://www.google.com/intl/en/images/logo.gif' %}">

示例2:

{% load eximaginate thumbnail %}

{% eximaginate 'http://www.google.com/intl/en/images/logo.gif' as original %}

<imgsrc="{% thumbnail original 100x100 %}">

在这两种情况下,都添加了两个附加的上下文变量:

  • ei_width-图像的宽度
  • ei_height-图像的高度

测试

只需键入:

./runtests.py

或使用毒物:

tox

或使用毒性检查特定环境:

tox -e py35

或者运行django测试:

./manage.py test eximagination --settings=settings.testing

许可证

gpl 2.0/lgpl 2.1

支架

如有任何问题,请通过Author部分中提供的电子邮件与我联系,或打开 关于BitBucket/GitHub的问题。

作者

艺术酒吧<;artur.barseghyan@gmail.com>;

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java以编程方式最小化JInternalFrame?   java使用JsonPath将不均匀列表提取为类型化对象   spring如何将java/resources文件获取到InputStream?   Java逻辑错误并不总是存在   java Firebase,更新特定字段   Java stream groupby并同时加入以进行csv导出   java安卓:如果出现任何声音,监听器将录制声音   java如何从多个文件中轮询最后修改的文件并发送到apache camel中的目标端点?   java是否返回多个比较器?   JavaBean IO:Date MMM在CAPS中不解析   当JButton从另一个类单击时,java正在更新JLabel   基类中子类的Java泛型初始化   jakarta ee Java ee制作一个以毫秒为间隔的计时器来发送数据包   json Windows Azure日期格式转换为Java日期