2017-12-03 8 views
2

私はこの概念を正しく理解していないと思います。 Djangoをバックエンドとして使用してサーバーサイドコードを実行している場合、Node.jsのパッケージも含めることができます。Djangoと一緒にNode.jsパッケージを使用できますか?

Node.jsではサーバーサイドコードの環境や言語が異なりますか?

ノードパッケージをDjangoで使用することができますか。人々が「ノードjsはプラットフォームであり、Djangoはフレームワークです」と言うとき、それはどういう意味ですか?

あなたはこれらの2つの環境(ここではWeb開発に新しい:))に関するいくつかの徹底的な詳細が含まれている場合、私は非常にGREATFULだろう

+0

Djangoは** Python ** Webサーバーフレームワークです。 – Pointy

答えて

8

私はジャンゴと一緒にNode.jsのパッケージを使用することはできますか?

いいえ。DjangoはPythonフレームワークであり、Pythonインタプリタで動作します。そのインタプリタは、Javascriptであり、node.js Javascriptエンジンに依存しているため、node.jsモジュールを実行することはできません。

あなたは、物事を比較したい場合は、次の

node.js <==> python (runtime language engines with built-in libraries) 
express <==> django (frameworks that run in a given runtime) 

のNode.jsのJavaScriptプラットフォーム

のNode.jsはJavascriptプログラミング環境で、サーバー側であるので、これは一種の混乱であります。サーバーの作成に使用できますが、汎用のスクリプト環境として使用して、さまざまなビルドツールを実装するなど、コンピュータ上でやりたいことを行うこともできます。

webPackは、Javascriptで作成されたnode.jsで実行されるビルドツールの1つです。その機能は、クライアントサイドのJavascriptファイルをパッケージ化することですが、どのようなタイプのツールでも可能です。

node.jsには多くのツールがあります。特に、node.js開発者がよく使用するツール(既にその環境がインストールされているため)があります。あなたは本当に両方のNode.jsとDjangoの機能を組み合わせることが必要な場合は


、あなたはどのようなJavaScriptライブラリを使用して、2つの別々のプログラム1)ジャンゴを使用してPythonプログラムと2)のNode.jsプログラムを作成する必要があります必要なIPCメカニズム(TCP、stdio、ファイルなど)を使用して、2つのプログラム間で通信することができます。

1

djangoをサーバーとしてnodejをサーバーとして使用するには、2つの異なる環境が必要ですが、node.jsは最新のWeb開発でクライアントJavascriptのパッケージを管理する重要な役割を果たします。 例として、Webpackのようなツールは、クライアント用の一連のJavascriptモジュールをバンドルします。これらのモジュールとその依存関係をパッケージ化するより便利な方法の1つは、ノードパッケージマネージャーnpmを使用することです。 したがって、クライアント用のJavascriptをバンドルしたり、バンドルするためにモジュールをインストールしたりするために、Nodeを使用することは全く合理的です。これは、クライアント上でAngularのようなフレームワークを使用している場合に特に当てはまります。あなたがDjangoのサーバーに裏打ちされた角度のアプリケーションを持っていたのであれば、あなたの仕事の流れは以下のようになります。

  • は、そのインストールおよび管理するためにあなたの角度のApp

  • 使用NPMのノードプロジェクトを作成します。依存関係

  • ng build --prodを使用してwebpackを呼び出して、クライアントに送信できるバンドルを生成します。

上記はすべてノードを使用します。その後

  • は、クライアントアプリケーションが呼び出すことができるREST APIを提示するために、いくつかのDjangoの安らかなフレームワークを使用ジャンゴ

    にサーバー用
  • をお使いのモデルとビジネスロジックを記述します。 Node.jsのは、サーバサイドJavaScriptのプラットフォームであるため、

これは一種の混乱ですが、それがために使用されています:クライアント・モジュール用パッケージを提供

  • サーバ - を提供特定のサイトがクライアントに送信するコンテンツを準備するためのサイド変換を行います。

関連する問題