アンプ&バックエンド
10613 ワード
このチュートリアルでは、完全なスタックアプリケーションを構築する方法について説明します.
我々がするものは、Aをつくるために一歩ずつ行くことです
あなたが動けなくなるならば、どんな質問か、またはちょうどあなた自身のような他のアンプ開発者にHiを言いたいですDiscord !
ステップ1 -新しいアプリを作成する ステップ2 -エンティティを作成する ステップ3 -ロールを作成する ステップ4 -アクセス許可を割り当てる ステップ5 -バックエンドを構築する ステップ6 -バックエンドを実行する ステップ7 うまくいけば、あなたはチャンスを増幅アカウントを作成するが、していない場合は、フレットしないでください!訪問https://app.amplication.com/ ログイン画面に指示されます.ここでは、既存のアンプのアカウントにログインしたり、1つを作成するには、githubアカウントで署名します.あなたは10時に終わるはずです をクリックします
絹篩で篩うたよう あなたは、アプリケーションのエンティティに指示されます.エンティティは、NoSQLデータベースのコレクションまたはリレーショナルデータベースのテーブルと等価です.
既定では、ユーザーエンティティが作成されます.このエンティティは最終的に認証を処理するのに役立ちます.しかし、まず、バックエンドに対処しましょう.
メインエンティティは、ユーザーが作成したタスクを格納するために使用されます. クリック
時 左側のパネルでは、
最初のフィールドは
ドロップダウンに注意してください ここで必要とされる唯一の変更は必須のフィールドです.を切り替える 前と同様に新しいフィールドを作成します 作成する必要のある最後のフィールドは The
増幅は、バックエンドの異なるエンティティ内のエントリを作成、読み取り、更新、および削除する粒状許可を可能にします.
ユーザーの誰がタスクを作成し、読み取り、およびそのタスクを更新し、他のことを行うことを防ぐために特定のアクセス許可を付与する必要がありますToDoアプリでタスクを作成されます. をクリックします
その後、プロパティのように、我々は
ToDoアプリケーションのユーザーのための役割を作成すると、我々は特定のアクセス許可を割り当てる必要があります をクリックします
既定では、すべてのロールはCRUD(CREATE、READ、UPDATE、DELETE)のすべてのエンティティにアクセスします.それは私たちのTODOユーザーの範囲を制限することが重要です. 選択 エンティティのコマンドのパーミッションを に戻る
新しいタスクエンティティを作成し、ユーザーとの関係を作成します.我々は今バックエンドを構築する準備が整いました.
右側のパネルには
クリック ページの下部には、テキストとステータスボタンがあります
これは数分かかるが、一度完了すると
既定での増幅は、すべての要求が認証される必要がある安全な環境を作成します.このユースケースのために、我々はそれらの保護のいくらかを楽にしたいです.Amplicationの拡張性のおかげで、我々は我々のために生成されたすべての上に構築することができます. バックエンドをダウンロードすることから始めましょう.ページの右下には、ダウンロードボタンが表示されます.をクリックしてダウンロードする
zipファイルを展開し、
The
新しい端末を開き、以下のコマンドを実行します.このコマンドはすべてのサブフォルダの依存関係をインストールします.このコマンドのもう一つの有用な側面は、あなたがGithubにこのプロジェクトをプッシュし、あなたが実行するときにrepoをクローン化した場合です
コードとのいくつかの小さな衝突があります
更新
また、フロントエンドとバックエンドのコードを同時に実行するスクリプトを開始します.
サーバーを起動する前にいくつかの追加の手順が必要です.読める クライアントを作成する Dockerでデータベースを起動する データベースを初期化する
これらの手順が完了すると、次のコマンドが実行されます.
TODOアプリのフロントエンドはhttp://localhost:5000/ , バックエンドはhttp://localhost:3000/ .
訪問http://localhost:3000/ ウィルであなたを迎えます
バックエンドが作成され、ローカルで実行されているので、フロントエンドにリンクする準備ができています.まず、コードに追加を加える必要があります.
次の週のステップ3のチェック、またはAmplication docs site 今すぐフルガイド!
この手順の変更を表示するにはvisit here .
我々がするものは、Aをつくるために一歩ずつ行くことです
Todos
あなたのフロントエンドとあなたのバックエンドのための増幅のための反応を使用してアプリケーション.あなたが動けなくなるならば、どんな質問か、またはちょうどあなた自身のような他のアンプ開発者にHiを言いたいですDiscord !
目次
ステップ1 -新しいアプリを作成する
New App
あなたがそれを得ることができるならばhere . New App
右上隅にあるボタン.Start from Scratch
そして、アプリのために数秒待って生成される.既定では、ユーザーエンティティが作成されます.このエンティティは最終的に認証を処理するのに役立ちます.しかし、まず、バックエンドに対処しましょう.
ステップ2 -エンティティを作成する
メインエンティティは、ユーザーが作成したタスクを格納するために使用されます.
Add entity
.New entity
モーダル表示Task
入力フィールドにCreate Entity
. 作成したエンティティを使用すると、タスク要素のフィールドを定義します.Fields
このエンティティには、フィールドが追加されるオプションがあります.Text
. 入力するAdd field
入力とヒットenter
. 新しいフィールドが作成され、いくつかのオプションが表示されます.Data Type
このフィールドのSingle Line Text
. それは、タスクの文字列入力されるように完璧です.フィールドにはさまざまなデータ型の増幅が適用できます.Required Field
スイッチ.変更が自動的に保存されます.Completed
. このフィールドは必須フィールドでもありますが、データ型を変更します.をクリックしますData Type
ドロップダウンし、このフィールドをBoolean
. UID
. このフィールドは、タスクをユーザーに関連付けるために使用されます.必須のフィールドとしてマークします.にData Type
ドロップダウン選択Relation to Entity
. Related Entity
ドロップダウンが表示されますUser
. タスクとユーザの間の関係を作成するよう要求するモーダルが表示されます.クリックCreate
リレーションシップを作成するにはエンティティ関係についてもっと知るためには、Docshere . ステップ3 -ロールを作成する
増幅は、バックエンドの異なるエンティティ内のエントリを作成、読み取り、更新、および削除する粒状許可を可能にします.
ユーザーの誰がタスクを作成し、読み取り、およびそのタスクを更新し、他のことを行うことを防ぐために特定のアクセス許可を付与する必要がありますToDoアプリでタスクを作成されます.
Roles
左側のパネルのアイコン.Task
エンティティと呼ばれるロールを作成するTodo User
.ステップ4 -アクセス許可を割り当てる
ToDoアプリケーションのユーザーのための役割を作成すると、我々は特定のアクセス許可を割り当てる必要があります
Todo User
役割Entities
左側のパネルのアイコン.既定では、すべてのロールはCRUD(CREATE、READ、UPDATE、DELETE)のすべてのエンティティにアクセスします.それは私たちのTODOユーザーの範囲を制限することが重要です.
User
エンティティのリストからのエンティティ、および左側のパネル選択Permissions
. あらゆる種類のコマンドをAll Roles
. ユーザーとUser
or Todo User
ロールは、User
エンティティ.これは危険です.バックエンドによって作成された既定の管理アカウントはロールを持っていますUser
, それで、我々はそれで混乱したくありません.私たちが最終的にすることは、すべての新しいユーザーが割り当てられるようにそれを持っていますTodo User
そして、特定のコマンドへのアクセスを制限します.Granular
とトグルUser
役割今すぐアクセスできる唯一のユーザーUser
アカウントにはUser
ロールは管理者アカウントにのみ属します. Entities
ページを選択Task
エンティティ.クリックPermissions
. を切り替えるDelete
コマンドにGranular
にアクセスし、User
役割両方User
sと管理者Todo User
s(アプリの定期的なユーザー)を作成し、読み取り、およびタスクを更新できるようになりますでも、User
sはタスクを削除することができます. ステップ5 -バックエンドを構築する
新しいタスクエンティティを作成し、ユーザーとの関係を作成します.我々は今バックエンドを構築する準備が整いました.
右側のパネルには
Pending Changes
where the changes to Task
and User
が表示されます.Commit changes & build
変更を終了し、バックエンドのインスタンスをサンドボックス環境に展開します.Preparing sandbox environment...
. をクリックすると、バックエンドのログに記録されます.これは数分かかるが、一度完了すると
Open Sandbox environment
, しかし、我々はtodoアプリのサンドボックスを使用されません.既定での増幅は、すべての要求が認証される必要がある安全な環境を作成します.このユースケースのために、我々はそれらの保護のいくらかを楽にしたいです.Amplicationの拡張性のおかげで、我々は我々のために生成されたすべての上に構築することができます.
.zip
バックエンドを実行するすべてのコードを含むファイル.README.md
) の根にamplication-react
プロジェクトステップ6 -バックエンドを実行する
The
admin-ui
and server
増幅によって生成されるフォルダは、設定する必要がある2つの新しいノードプロジェクトです.両方とも必要なのは依存関係です.にpackage.json
更新postinstall
スクリプト"postinstall": "npm ci --prefix web && npm ci --prefix admin-ui && npm ci --prefix server"
新しい端末を開き、以下のコマンドを実行します.このコマンドはすべてのサブフォルダの依存関係をインストールします.このコマンドのもう一つの有用な側面は、あなたがGithubにこのプロジェクトをプッシュし、あなたが実行するときにrepoをクローン化した場合です
npm install
このスクリプトは、インストール後にサブフォルダの依存関係を自動的にインストールします.npm run postinstall
コードとのいくつかの小さな衝突があります
create-react-app
私たちのために作成され、コードの増幅は私たちのために作成.これは簡単に修正する必要があります.インストールcross-env
and npm-run-all
以下のようにdev依存性として:npm install -D cross-env npm-run-all
更新
start
スクリプトpackage.json
と同様にスクリプトを追加します.これを行うことによって、TODOアプリのUIは、現在のポート上で実行されます5000
開発の間、それはサーバーのためのアンプのデフォルトポートと衝突しません3000
).また、フロントエンドとバックエンドのコードを同時に実行するスクリプトを開始します.
"start": "npm-run-all -p start:frontend start:backend",
"start:frontend": "cross-env PORT=5000 npm --prefix web start",
"start:admin": "npm --prefix admin-ui start",
"start:backend": "npm --prefix server start",
サーバーを起動する前にいくつかの追加の手順が必要です.読める
server/README.md
for directions to:これらの手順が完了すると、次のコマンドが実行されます.
npm run start
ステップ7
TODOアプリのフロントエンドはhttp://localhost:5000/ , バックエンドはhttp://localhost:3000/ .
訪問http://localhost:3000/ ウィルであなたを迎えます
404
エラーです.代わりに、訪問http://localhost:3000/api/ バックエンドのすべての終点を見て、我々の残りのエンドポイントがどのように見えるかを見るために.バックエンドが作成され、ローカルで実行されているので、フロントエンドにリンクする準備ができています.まず、コードに追加を加える必要があります.
次の週のステップ3のチェック、またはAmplication docs site 今すぐフルガイド!
この手順の変更を表示するにはvisit here .
Reference
この問題について(アンプ&バックエンド), 我々は、より多くの情報をここで見つけました https://dev.to/amplication/amplication-react-create-the-backend-43lfテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol