2017-02-28 4 views
1

私はdjangoでWebアプリケーションを構築していますが、これまではWebブラウザにレンダリングするためにdjangoテンプレートを使用してきました。しかし、私はモバイルアプリケーション用のアプリケーションも拡張しようと考えています。最良の方法は、RESTfulなアプリケーションを構築することです。私はdjangoでこれを行う方法を知っていますが、django-restframeworkを使うのはとても簡単ですが、単純なJSONレスポンスでWebアプリケーションとテンプレートを使用するWebブラウザにレンダリングするアプリケーションを構築する方法は実際にはわかりません。私はビューをクライアントタイプにチェックインし、それがウェブアプリかモバイルアプリかに応じて異なるレスポンスを使用する必要がありますか?それを行う別の方法があります。前もって感謝します。Webクライアントとモバイルアプリケーションの両方にレンダリングするDjangoアプリケーションを構築する方法

+0

モバイルアプリは特定のAPI URLを使用しますか? –

+0

ありがとうダニエル。私は実際にそれを実際に行う方法を本当に知らない。モバイルアプリで別のURLを使用する必要がありますか?この場合、ビューはモバイルアプリまたはウェブブラウザでは異なるでしょうか? – Spider

答えて

2

おそらく開始here - ウェブにやさしいDjangoアプリの作成にヒントを与え、モバイルフレンドリー(反応的)。 TL; DR、Twitter Bootstrapまたは同様のUIフレームワーク/ツールセットを試してみてください。

あなたのWebアプリを模倣モバイル体験を持っているつもりであればそうでない場合は、それについての前に2つの方法があります。

  1. はあなたの選択したモバイルOS(例えばによってサポートされる言語でのネイティブUIを書きますAndroid用のJava)。選択した言語でREST API呼び出しを行う方法に関するチュートリアルをオンラインで検索し、すでに述べたREST APIをこれらのクライアント側の呼び出しに公開します。
  2. フロントエンドをバックエンドから切り離すようにWebアプリを設計した場合(たとえば、フロントエンドが純粋にAPI呼び出しやAJAX経由でバックエンドと対話できるなど)、またはこれを行うことができます。次に、Cordova、PhoneGapなどのツールセットを使用してフロントエンドをバンドルすることができます。また、モバイルアプリをどこで実行するかによって、フロントエンドUIをモバイルハイブリッドアプリ(ネイティブエンジン、レンダリングWeb UI)。

あり、他のアプローチ可能性がある - 例えば、クロスプラットフォーム開発における私自身の仕事はProject Okotを開発するために私を導いた、Studioあなたは(ドラッグアンドドロップ)一度アプリケーションを設計することができますが、それらは、モバイル上でレンダリングしていそれ以上のコーディングなしでWebを作成できます。

上記はあなたのためのアイデアです...そうでなければ、より良い解決策があるかもしれません。

+0

ありがとうございますnemesisfixx。したがって、方法の1つはJSON応答を表示するためにdjangoアプリケーションを構築することです。 AJAXを使用して独自にHTML Webページを作成してJSONデータをクエリして取得し、モバイルアプリケーションUIを独自に構築して同じことを行う。バックエンドを前面から分離させるために、djangoテンプレートを使用せずに。右 ? – Spider

+0

@Spider、はい、それは#1と2で推奨されているものです。フロントエンドコードをどれだけ活用したいかという点で唯一の違いがあります。 #1では、Webとモバイルプロジェクトの間でAPI(バックエンド)だけを共有できます。 #2は、フロントエンドのコードまでも共有する方法を模索しています。 – nemesisfixx

+0

ありがとうございますnemesisfixx。それはたくさんの助けになります! – Spider

関連する問題