インストールとデータベースセットアップ


インストールする必要があるすべての要件があるので、プロジェクトを設定しましょう.

If you're having any problems setting up or installing the dependencies, feel free to leave a comment or shoot me a DM.


我々がこのポストでカバーすること.
  • Creating a new project
  • Adonis Project Structures
  • IDE Setup
  • Starting the Development Server
  • Database Setup
  • 新しいプロジェクトの作成


    新しいプロジェクトを初期化するには、端末上で簡単なコマンドが必要です.
    単純に、プロジェクトのようなディレクトリに移動し、次のように入力しますnpm init adonis-ts-app fitit or yarn create adonis-ts-app fitit文脈のためにこのコマンドを壊しましょう.
  • npm init - これは単にプロジェクトの初期化です.パッケージマネージャとしてNPMを使用しているのでnpm .
  • adonis-ts-app - プロジェクトをタイプスクリプトプロジェクトとして初期化しています.タイプスクリプトを使用したくないならば、バニラJavaScriptに固執してくださいadonis new fitit . これはアドニスCLIをインストールすることを含みます.これ以上の詳細についてはthis link. しかし、私はタイプスクリプトのバージョンを使用することをお勧めします.
  • fitit - これはアプリケーションの名前です.
  • 一般に、新しいAdonisアプリケーションを作成する一般的な構造は
    npm init adonis-ts-app <project_name>
    
    
    プロジェクト初期化コマンドを入力した後、NPMは最初に必要なADonisパッケージをインストールします.

    アドニスプロジェクト構造


    次のプロジェクト構造のいずれかを選択できます.
  • web project 構造は、古典的なサーバーレンダリングアプリケーションを作成するために理想的です.我々は、セッションのサポートを構成し、またADonisJSテンプレートエンジンをインストールします.また、イメージのような静的なファイルを提供するためのサポートが提供されます.
  • api project 構造体はAPIサーバの作成に最適です.また、これはCorsのサポートを設定します.
  • slim project 構造体は最小のadonisjsアプリケーションを作成し、フレームワークコアを除いて追加のパッケージをインストールしません.この種の柔軟性を考慮に入れる.これは、開発者がアプリケーションを構築するまでです.
  • 若干のマイナーな違いから離れて、全体的なプロジェクト構造がほとんど類似している点に注意する価値があります.
    このプロジェクトのために、私たちはapi project 構造この理由は、APIサーバとしてadonisを使う予定だからです.ジェイフロント.

    If you're using vs code, the command prompt will ask for additional configurations. These are prettier and eslint-related. I advise using both formatters.


    プロジェクトが作成された後、端末上でこのようなメッセージが表示されます.

    コードセットアップ


    This section is intended for anyone using vs code as their IDE. If you use any other IDE, you can skip over to the next section.


    いくつかの拡張は、あなたのアドニス開発をVSコードで容易にします.これらは

  • Prettier and eslint - 私が以前言及したように、あなたは、きれいで、そして、eslintをインストールする必要がありました.これはインストールプロセス中に設定されます.
  • JavaScript and TypeScript Nightly

  • Adonis JS Snippets - 洞察力の断片を提供します.

  • Adonis Js Go to controller 我々はルートでの作業を開始するときに便利になります.
  • 開発サーバの起動


    プロジェクトディレクトリに移動し、プロジェクトが作成されたことをIDEで開きます.
    次のコマンドを実行して、ローカル開発サーバーをスピンしますnode ace serve --watch
    ブラウザを開き、そしてlocalhost:3333 . あなたがすべてを正しくしたならば、あなたはスクリーンを見なければなりませんhello world テキスト.あなたの最初のアドニスプロジェクトをセットアップするおめでとう!🎉🎊
    ここから、物事が面白いことを始める、我々はデータベースを設定しますが、我々はそこに頭の前にnode ace serve --watch そうです.ace は、アプリケーション内に埋め込まれているコマンドラインフレームワークです.これは、プロジェクト固有のコマンドを作成し、それらを使用して実行することができますnode ace . チュートリアル全体でエースコマンドを使用します.ACEコマンドの詳細な説明については
    上記のコマンドのために、それが何をするかを壊しましょう.
  • The serve コマンドはHTTPサーバを起動し、タイプスクリプトのJavaScriptへのメモリ内コンパイルを行います.
  • The -watch フラグは、ファイルシステムの変更を監視し、サーバーを自動的に再起動します.
  • データベース設定


    前に、我々のアプリケーションをデータベースに接続しよう.

    I'll assume that you have some knowledge of setting up Postgres or SQL databases and already have one on your computer. If this is not the case, you can use sqlite, which will be a file created on your machine once we start defining the database configuration.


    AdonisjsはSQLデータベースの最初のクラスのサポートをしています.フレームワークのデータ層は明快(adonisjs orm)によって供給され、パッケージは別途インストールされなければならない.
    単に実行するnpm i @adonisjs/lucidインストールが成功すると、データベースドライバを構成し、データベースを作成します.このチュートリアルではPostgresを使用します.私の設定はPostgresに関連します.ただし、SQLを使用している場合は、関連する設定を使用します.
    SQLiteを選択した場合、設定は必要ありません.
    一度実行、実行
    node ace configure @adonisjs/lucid
    
    
    or
    node ace invoke @adonisjs/lucid
    
    

    ACE構成および呼び出しコマンドは、パッケージによって公開されたJavaScriptファイルの指示を実行します.
    Postgresに行くことにしたので、環境変数を検証するコードをenvにコピーします.tsファイル.

    Environment variables are injected from outside. The env.ts file validates that they type match and that the app is always running with the correct set of configuration values.
    Your env.ts file should now look like this.


    import Env from '@ioc:Adonis/Core/Env'
    
    export default Env.rules({
      HOST: Env.schema.string({ format: 'host' }),
      PORT: Env.schema.number(),
      APP_KEY: Env.schema.string(),
      APP_NAME: Env.schema.string(),
      PG_HOST: Env.schema.string({ format: 'host' }),
      PG_PORT: Env.schema.number(),
      PG_USER: Env.schema.string(),
      PG_PASSWORD: Env.schema.string.optional(),
      PG_DB_NAME: Env.schema.string(),
      NODE_ENV: Env.schema.enum(['development', 'production', 'testing'] as const),
    })
    
    
  • The config/database.ts ファイルはデータベースに関連するすべての設定を保持します.この詳細については、チェックアウトdocumentation.
  • 次に、Postgres上でデータベースを設定します.

    データベース名を任意の名前を指定できます.
    最後に、あなたの.env これらの値をファイル
    
    DB_CONNECTION=pg
    PG_HOST=localhost
    PG_PORT=5432
    PG_USER=postgres
    PG_PASSWORD=<your_postgres_password>
    PG_DB_NAME=<your_db_name>
    
    

    データベース接続のテスト。


    Adonisは、データベース接続が働いているかどうかチェックするきちんとした健康チェッカーが付属しています.
    移動するstart/routes.ts ペーストし、次のコードを貼り付けます.
    
    import HealthCheck from '@ioc:Adonis/Core/HealthCheck'
    import Route from '@ioc:Adonis/Core/Route'
    
    // check db connection
    Route.get('health', async ({ response }) => {
      const report = await HealthCheck.getReport()
    
      return report.healthy ? response.ok(report) : response.badRequest(report)
    })
    
    
    あなたのサーバーがまだ動いているので、ブラウザータブとタイプを開けてくださいlocalhost:3333/healthすべてがうまく動作し、データベースが接続されている場合は、次の画面が表示されます.

    閉鎖思考


    コンテンツのような場合は、ADONISの開発についての詳細を知りたいと思って、次のようにしていただきありがとうございますpersonal website または私に従ってください.また、任意の明確化が必要な場合、または追加を指摘したいコメントを残すことができます.
    次の部分については、私はデータベースモデルとの関係をカバーするでしょう.
    また、私のシリーズに従うことができますpersonal website.
    ステイ!