Google でしばらく検索しましたが、探しているものを正確に見つけることができませんでした。ここで皆さんに質問することにしました。
サイトの完全版とモバイル版 (1 ページの jQuery Mobile ファイル) があります。
理論的には、可能なモバイル デバイスの着信要求をチェックし (既にこれを実行できます)、モバイル サイトにリダイレクトしたいと考えています。モバイル サイトでは、ユーザーは 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 モバイルのように見えます。
何か案は?