検索
ホームページウェブフロントエンドjsチュートリアルReactify-django CLI を使用して React を Django にシームレスに統合する

Integrate React into Django Seamlessly with the reactify-django CLI

Django プロジェクトに React を追加すると、開発エクスペリエンスが向上し、Django のサーバー側レンダリングとセキュリティのパワーを React の動的クライアント側機能で利用できるようになります。 Reactify-django CLI を使用すると、この統合が簡単になり、React で高度にインタラクティブな UI を構築しながら、Django の堅牢なバックエンドを活用できるようになります。さらに、TypeScript を静的型付け用に、Tailwind CSS をユーティリティファーストのスタイル用に構成できる柔軟性があり、最初から合理化された最新の開発セットアップが可能になります。

このガイドでは、Django と React を組み合わせることがなぜ有益なのかを探り、次に、reactify-django を使用して新規および既存の Django プロジェクトの両方で React をセットアップする手順を順を追って説明します。

モノリシックな Django-React セットアップを選択する理由

モノリシックな Django-React アーキテクチャは、両方の長所を提供します。
このアプローチが有利な理由は次のとおりです:

  • サーバーサイド レンダリング (SSR): Django のテンプレート エンジンと強力なバックエンド機能により、すぐに使えるサーバーサイド レンダリングが提供され、SEO とページの初期読み込み速度が向上します。
  • 強化されたルーティングとセキュリティ: Django の組み込みルーティングと堅牢なセキュリティ機能 (CSRF 保護やセッション処理など) により、バックエンド管理が簡素化され、複雑なルーティングの処理がより安全かつ簡単になります。
  • 統合デプロイメント: React と Django を 1 つ屋根の下に配置すると、単一のアプリケーションとしてデプロイできるため、別々のフロントエンド サービスとバックエンド サービスを管理する複雑さが軽減されます。また、Django と React は同じオリジンを共有しているため、CORS ヘッダーと構成も必要なくなります。

reactify-django を使用して Django 内で React をセットアップすると、プロジェクトの初期化が速くなり、ボイラープレート コードが減り、すぐに機能の構築を開始できるようになります。

1. はじめに:

reactify-django をインストールします
Reactify-django を使用するには、マシンに Node.js がインストールされている必要があります。 Nodeを取得したら、npx:
を使用してreactify-djangoを直接実行できます。 npx reverseify-django

コマンドの概要
CLI には 2 つの主要なコマンドがあります:

  • init React を含む新しい Django プロジェクトをセットアップします。
  • add React を既存の Django プロジェクトに追加します。

2. React を使用して新しい Django プロジェクトをセットアップする

最初から始めるには、init コマンドを使用して、React で構成された新しい Django プロジェクトを作成します。

1.コマンドを実行します:

npx reverseify-django init

2.セットアップのプロンプトに答えます:
以下の情報を提供するよう求められます:

  • プロジェクト名: Django プロジェクトの名前。
  • アプリ名: React が統合される Django アプリの名前。
  • オプションの設定: 追加のツールやスタイル設定機能のために、プロジェクトで TypeScript や Tailwind CSS を使用するかどうかを選択します。

3. ファイルの生成と構成:

CLI は Django プロジェクト ファイルをセットアップし、React バンドル用に Webpack を構成し、選択されている場合は TypeScript や Tailwind に必要な依存関係を追加します。 React の開始点として templates/your_app_name/index.html ファイルが自動的に生成され、views.index.

でルート URL にマッピングされます。

使用例:

npx reverseify-django init -c ./my-new-project

目的のプロジェクト フォルダーで実行していない場合は、-c (または --cwd) フラグを使用してターゲット ディレクトリを指定できます。

URL 設定に関する注意:
デフォルトでは、reactify-django の init コマンドは Django アプリをルート URL ("") にマップします。この構成は、次のような URL にアプリ固有のプレフィックスを使用することを推奨する Django の一般的な推奨事項とは少し異なります。

from django.urls import include, path

urlpatterns = [
    path("your_app_name/", include("your_app_name.urls")),
    path("admin/", admin.site.urls),
]
ただし、簡単にするために、生成されたセットアップにはルート レベルでアプリの URL が直接含まれています。


from django.urls import include, path

urlpatterns = [
    path("", include("your_app_name.urls")),
    path("admin/", admin.site.urls),
]
このアプローチは、単一ページ アプリケーションにクリーンな基本レベルのエントリ ポイントを提供します。 Django の規則に従いたい場合、または複数の Django アプリを使用する予定がある場合は、アプリ名のプレフィックスを含めるように変更できます。

3. React を既存の Django プロジェクトに統合する

すでに Django プロジェクトがある場合は、add コマンドを使用して、既存の Django アプリ内で React をセットアップできます。

1. App ディレクトリに移動します:

cd パス/to/your-django-app

2.コマンドを実行します:

npx reverseify-django add

3.追加のオプションを選択します:

TypeScript と Tailwind の構成を求めるプロンプトが表示され、ニーズに合わせて React セットアップを調整できます。

このコマンドは、アプリのディレクトリに webpack.config.js を生成し、JavaScript バンドルを static/your_app_name/js/ にbundle.js として配置します。 React をテンプレートに含めるには、次のようにこのバンドルをロードできます:

{% 静的負荷 %}
<p>使用例:<strong></strong>

</p>npx reverseify-django add -c ./path/to/app<p>

</p>
  
  
  4. プロジェクトの実行と構築
<h2>

</h2>セットアップが完了したら、すぐに開発を開始できます:<p>

</p>
  • 開発モード

1. Webpack 開発サーバーを起動します: Django アプリ ディレクトリ (package.json がある場所) で、次を実行します:

npm 開始

これにより、Webpack 開発サーバーが起動し、保存するたびに React コードがバンドルされ、Django 静的フォルダーに出力されます。

2. Django 開発サーバーを実行します:
別のターミナル セッションで、次のように Django サーバーを起動します。

python manage.py runserver

Django 開発サーバーから React アプリにアクセスできるようになり、サーバー側とクライアント側の同時開発が可能になります。

  • 本番ビルド

デプロイの準備ができたら、Django アプリ ディレクトリに移動し、次のコマンドを実行します。

npm run build

これにより、実稼働用の React アプリがバンドルされ、Django が提供できるように最適化された JavaScript が static/ ディレクトリに配置されます。

5. セットアップのカスタマイズ

reactify-django を実行すると、設定ファイル (webpack.config.js や Django 設定など) を微調整できるようになります。この柔軟性により、プロジェクトの要件に合わせて設定を調整できます。

結論

reactify-django CLI は、新規に開始する場合でも、既存のアプリに React を追加する場合でも、React を Django プロジェクトに追加するプロセスを簡素化します。 Django のバックエンドの強みと React のフロントエンドの柔軟性を融合することで、堅牢で機能が豊富なモノリシック アプリケーションを作成できます。
これを試してみるには、npx reactify-django を使用して CLI をインストールし、開発プロセスを合理化する方法を検討してください。 Django と React の両方の長所を利用してコーディングをお楽しみください!

このツールがあなたのプロジェクトに役立つことを願っています。このプロジェクトは GitHub で見つけることができます。問題があればお気軽に投稿または報告してください!

以上がReactify-django CLI を使用して React を Django にシームレスに統合するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
CおよびJavaScript:接続が説明しましたCおよびJavaScript:接続が説明しましたApr 23, 2025 am 12:07 AM

CおよびJavaScriptは、WebAssemblyを介して相互運用性を実現します。 1)CコードはWebAssemblyモジュールにコンパイルされ、JavaScript環境に導入され、コンピューティングパワーが強化されます。 2)ゲーム開発では、Cは物理エンジンとグラフィックスレンダリングを処理し、JavaScriptはゲームロジックとユーザーインターフェイスを担当します。

Webサイトからアプリまで:JavaScriptの多様なアプリケーションWebサイトからアプリまで:JavaScriptの多様なアプリケーションApr 22, 2025 am 12:02 AM

JavaScriptは、Webサイト、モバイルアプリケーション、デスクトップアプリケーション、サーバー側のプログラミングで広く使用されています。 1)Webサイト開発では、JavaScriptはHTMLおよびCSSと一緒にDOMを運用して、JQueryやReactなどのフレームワークをサポートします。 2)ReactNativeおよびIonicを通じて、JavaScriptはクロスプラットフォームモバイルアプリケーションを開発するために使用されます。 3)電子フレームワークにより、JavaScriptはデスクトップアプリケーションを構築できます。 4)node.jsを使用すると、JavaScriptがサーバー側で実行され、高い並行リクエストをサポートします。

Python vs. JavaScript:ユースケースとアプリケーションと比較されますPython vs. JavaScript:ユースケースとアプリケーションと比較されますApr 21, 2025 am 12:01 AM

Pythonはデータサイエンスと自動化により適していますが、JavaScriptはフロントエンドとフルスタックの開発により適しています。 1. Pythonは、データ処理とモデリングのためにNumpyやPandasなどのライブラリを使用して、データサイエンスと機械学習でうまく機能します。 2。Pythonは、自動化とスクリプトにおいて簡潔で効率的です。 3. JavaScriptはフロントエンド開発に不可欠であり、動的なWebページと単一ページアプリケーションの構築に使用されます。 4. JavaScriptは、node.jsを通じてバックエンド開発において役割を果たし、フルスタック開発をサポートします。

JavaScript通訳者とコンパイラにおけるC/Cの役割JavaScript通訳者とコンパイラにおけるC/Cの役割Apr 20, 2025 am 12:01 AM

CとCは、主に通訳者とJITコンパイラを実装するために使用されるJavaScriptエンジンで重要な役割を果たします。 1)cは、JavaScriptソースコードを解析し、抽象的な構文ツリーを生成するために使用されます。 2)Cは、Bytecodeの生成と実行を担当します。 3)Cは、JITコンパイラを実装し、実行時にホットスポットコードを最適化およびコンパイルし、JavaScriptの実行効率を大幅に改善します。

JavaScript in Action:実際の例とプロジェクトJavaScript in Action:実際の例とプロジェクトApr 19, 2025 am 12:13 AM

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

JavaScriptとWeb:コア機能とユースケースJavaScriptとWeb:コア機能とユースケースApr 18, 2025 am 12:19 AM

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

JavaScriptエンジンの理解:実装の詳細JavaScriptエンジンの理解:実装の詳細Apr 17, 2025 am 12:05 AM

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

Python vs. JavaScript:学習曲線と使いやすさPython vs. JavaScript:学習曲線と使いやすさApr 16, 2025 am 12:12 AM

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい