Python 在Django 1.7+;中,在视图中检测移动设备的推荐方法是什么;?
我看过其他关于这个问题的stackoverflow帖子,但是回复要么已经过时,要么git回购协议已经不存在 对于版本1.7+,Django中检测移动设备的推荐方法是什么Python 在Django 1.7+;中,在视图中检测移动设备的推荐方法是什么;?,python,django,Python,Django,我看过其他关于这个问题的stackoverflow帖子,但是回复要么已经过时,要么git回购协议已经不存在 对于版本1.7+,Django中检测移动设备的推荐方法是什么 作为一个用例,如果用户在移动设备上,我需要此功能将其定向到移动站点,否则将定向到该站点的桌面版本。根据您是否要使用用户代理,您可以编写一个非常简单的中间件类来完成此操作 class UserAgentMiddleware(): def process_request(request): if reques
作为一个用例,如果用户在移动设备上,我需要此功能将其定向到移动站点,否则将定向到该站点的桌面版本。根据您是否要使用用户代理,您可以编写一个非常简单的中间件类来完成此操作
class UserAgentMiddleware():
def process_request(request):
if request.META.HTTP_USER_AGENT == (MOBILE):
do_something()
else:
return None
然后将其添加到中间件中
MIDDLEWARE_CLASSES = [
...
'path.to.UserAgentMiddleWare',
...
]
要按屏幕大小(设备屏幕大小)执行此操作,您需要编写一些javascript,然后在页面顶部使用AJAX调用重定向到移动站点
var width = (window.innerWidth > 0) ? window.innerWidth : screen.width;
if (width < X) {
window.location = window.location.protocol + "MOBILE_SITE_HERE" + window.location.pathname
}
var-width=(window.innerWidth>0)?window.innerWidth:screen.width;
如果(宽度
你试过微型探测器吗?我没试过。我找到了一个稳定的git repo,我将尝试它:只是尝试了一下,并且运行了一个有效的实现!只需下载上面的git repo,然后将文件夹内容复制并粘贴到django项目所在的目录中。然后将“'minidetector.Middleware',”添加到settings.py中的Middleware_类中