2017-05-15 4 views
2

私は同じアプリでDjangoとAngular 4を統合しようとしています(2つのサーバとしても動作しています)。 まあ、setup guideを読むと、node_modulesディレクトリ(およびいくつかの「ハードコード」参照)への参照が気付きました。角4をDjangoに統合する方法

これらのテクノロジをマージすることが可能かどうかを知りたいのですが、角度のDjango contexthttp.getを使用して結果をバインドすることをお勧めします。

またはnpm_modulesは私のstaticディレクトリに含まれていますか?

しかし、私は角度のあるプロジェクトを生成する必要がありますか?

+2

私はいつも角度付きDjango REST Frameworkを使用しています。私はWebサーバからAngularアプリを直接提供したいと思うので、Djangoから提供する必要はありません。 –

+0

@PauloScardineどのようにセッションを処理していますか?あなたはdjango認証方法を使用していますか? – MrMins

+0

私は、SSL、セッション認証、OAuth2での基本認証といういくつかの方法を使用しました。それぞれにはトレードオフがあります。 –

答えて

4

これは古いスレッドですが、最終的にはこれが私の望むやり方で動作するようになりました。私はDRFのDjangoバックエンドを持っています。フロントエンドにはAngular 4を使いたいと思っていました。私のアプリはユーザーのログインに依存し、2つのデバッグサーバー(Django用と1つはAngular用)を実行することはオプションではありませんでした。

秘密のソースは、このコマンドを実行することです:

ng build --watch true --output-path <your_static_scripts_dir> 

私は、私のDjangoプロジェクト内部(ng new app-nameを使用して)私の角度のアプリを作成した(templatesディレクトリにindex.htmlをコピーして、私のstaticfilesディレクトリを使用するように修正)。

PyCharmでファイルを編集できるようになりましたが、watch.tsファイルを再コンパイルして、組み込みのDjangoデバッグサーバだけを実行する必要があります。

+1

「Angular CLI:1.5.0'」--output-dirが '--output-path'に変更されました –

1

あなたができることはnodejsのフロントエンドで角を使うか親はDRFやtastypieを使ってDjangoでapiを作るのですが、絶対に2つを結合したいのであれば、 2 +私はDjangoで開発することもできますが、私たちはモバイルプラットフォーム上に存在することを望み、APIの事実にもネイティブでも、時にはjavascriptだけを使って左に武器を渡します。しかし、技術の世界を忘れないでください。本当に重要なのは、適応と敏捷性です。

関連する問題