インストールとデータベースセットアップ
If you're having any problems setting up or installing the dependencies, feel free to leave a comment or shoot me a DM.
我々がこのポストでカバーすること.
新しいプロジェクトの作成
新しいプロジェクトを初期化するには、端末上で簡単なコマンドが必要です.
単純に、プロジェクトのようなディレクトリに移動し、次のように入力します
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
- これはアプリケーションの名前です.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をインストールする必要がありました.これはインストールプロセス中に設定されます.
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コマンドの詳細な説明については上記のコマンドのために、それが何をするかを壊しましょう.
serve
コマンドはHTTPサーバを起動し、タイプスクリプトのJavaScriptへのメモリ内コンパイルを行います.-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
ornode 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),
})
config/database.ts
ファイルはデータベースに関連するすべての設定を保持します.この詳細については、チェックアウトdocumentation. データベース名を任意の名前を指定できます.
最後に、あなたの
.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.
ステイ!
Reference
この問題について(インストールとデータベースセットアップ), 我々は、より多くの情報をここで見つけました https://dev.to/tngeene/part-2-installation-and-database-setup-3o0nテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol