django中间件和view decorator用于检测手机和小屏幕设备

django-mobi2的Python项目详细描述


作者:ken cochrane
fork of:http://minidector.googlecode.com
fork描述:我重新组织了代码,添加了缓存,在这里和那里做了一些调整。
描述:django中间件和视图装饰器,用于检测电话和小屏幕设备
版本:0.1.7
最新更新:2013年11月17日

使用:
——
使用django mobi非常简单。只需将mobi包放入项目路径中,然后执行以下操作之一:




如果是,它会将request.mobile属性设置为true。

要使用,您只需将“add mobi.middleware.mobiledectionmiddleware”添加到“settings.py”中的“middleware\u classes”元组,然后在您的视图中检查request.mobile-如果是,则将其视为小屏幕设备。如果它是假的,那么它可能是一个桌面浏览器,或者一个蜘蛛或者其他东西。

]

如果要区分平板电脑设备和手机,请将mobi_detect_tablet设置为true并使用request.tablet属性

{%如果不是request.mobile或request.tablet%}
<;p>;此部分仅对descktop和平板电脑启用<;/p>;
{%endif%}







如果要强制将所有移动通信量设置为站点的仅移动版本,这很好。

要使用此功能,只需将“mobi.middleware.mobileDirectMiddleware”添加到“settings.py”中的“middleware”元组,此外,还可以添加mobi_redirect_url=“http://example.mobi”,其中http://example.mobi是要重定向所有移动通信的网站。




不使用中间件
--------
如果您只有某些需要区分的视图,则可以选择不搜索收到的每个请求。您只需将相关视图包装如下:

from mobi.decorators import detect_mobile

@detect_mobile
def my_mobile_view(request):
if request.mobile:

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

推荐PyPI第三方库


热门话题
java如何使用JShell中的正则表达式?   java如何将mysql数据源添加到applicationContext。xml   java冲突检测,在libgdx中   Java中的泛型抽象工厂模式和序列化   jboss 7.1.1上的java集群TimerService?   沙盒上使用的java Paypal Express签出,安全标头无效,API凭据中没有错误   递归需要编写递归函数,比较两个数字存储在ArrayList中的整数(java)   java数据连接在其4G连接中断时收到语音呼叫   java中多线程管理队列系统   在Xtext编辑器中实现不区分大小写的java   使用javafx播放java实时音频流   java通知代码在sdkVersion 16以下不起作用   java是否可以向BuffereImage动态添加图像   javascript在将源代码文件(.java、.css、.js)转换为pdf时保留语法突出显示