我一直在Google上搜索一段時間,一直沒能找到我正在尋找的東西,並決定在這裏問問大家。Django手機和全網站重定向
我有一個完整的網站和移動版本的網站(一頁jQuery移動文件)。
從理論上講,我想檢查傳入的請求可能的移動設備(我已經可以做到這一點),並重定向到移動網站。在移動網站上,用戶可以點擊指向設置cookie的完整網站的鏈接,並且不會將該用戶重定向回移動網站(即使他們將滿足該條件,但每次請求都會通過設備)。
我所能找到的所有內容都是關於如何檢查移動/桌面設備的每個請求並相應地更改模板。在這種情況下,我不需要這樣做。這是移動和桌面版本的完全不同的模板。
任何想法或解決方案,可能有助於在這種情況下?
更新1:
所以我試圖實現這個,我有一些奇怪的問題/問題。這是我的中間件(在設置中間件名單上最後列出)
class mobile_check(object):
def process_request(self,request):
if mobileBrowser(request) and not request.session.get('view_full'):
return HttpResponseRedirect(reverse('posts.views.mobile_django'))
這裏的處理,當他們點擊jQuery Mobile的完整的網站鏈接的視圖。
def mobile_fullsite(request):
#import pdb; pdb.set_trace()
request.session['view_full'] = True
return HttpResponseRedirect(reverse('posts.views.index'))
在我的腦海裏,這應該可以正常工作,但事實並非如此。它從鏈接點擊了mobile_fullsite視圖,並且url從.../mobile/...更改爲.../fullsite /然而,它仍然看起來像jQuery mobile,其中包含一些來自重定向頁面的內容。
任何想法?
是啊,我已經實現了一個移動的重定向僞,問題是當移動用戶(即現在的移動頁)想要回到完整的網站。您的解決方案不是完整的解決方案。 – Fernker
儘管我沒有明確地編寫代碼,但通過在if語句中檢查cookie或會話變量來檢查用戶是否請求訪問完整網站會非常簡單。 –
我已添加更新,因爲添加需要添加的內容並不像我期望的那麼簡單。 – Fernker