目次
models
リポジトリは複数のユーザーを持ち、ユーザーは複数のリポジトリを持つ 多対多
転送・起動
% DEBUG=otera-note:* npm run devstart
$ forever start bin/www % rsync -r --delete ~/tera-note/ jq:/home/jq/tera-note/
h1= title p Welcome to #{title}
設計
セッションを使用することにはメリットとデメリットがあります。以下にそのいくつかを挙げてみましょう。
- メリット:
1. **簡単な実装:**
- セッションは一般的に実装が簡単で、多くのウェブフレームワークやライブラリでサポートされています。特に小規模なアプリケーションにおいて、簡潔なコードでセッションを利用できます。
2. **セキュリティ:**
- セッションは一般的にサーバーサイドで管理されるため、クライアント側で変更されにくく、セキュリティが向上します。特にセッションIDを安全に扱えば、不正なアクセスを抑制できます。
3. **一時的なデータ保存:**
- ユーザーが一時的なデータを保持するのに適しています。たとえば、ログイン状態、ショッピングカートの内容など、セッションを使用することで簡単に管理できます。
- デメリット:
1. **サーバーの負荷:**
- 多くのセッション実装ではサーバーサイドでのデータ管理が必要です。セッションデータが増えるとサーバーの負荷が増加する可能性があります。
2. **スケーラビリティの制約:**
- セッションデータがサーバーサイドに保存されるため、複数のサーバーでアプリケーションをスケーリングする場合、セッションの同期が必要になります。これは管理が複雑になる可能性があります。
3. **データの保存場所:**
- セッションデータがサーバーサイドに保存されるため、データの永続性が低いことがあります。サーバー再起動やセッションの有効期限切れなどにより、データが失われる可能性があります。
4. **クライアント側のストレージ:**
- セッションIDをクライアントに保存するため、クッキーやLocalStorageを使用することがあります。これには一部のセキュリティ上の懸念が伴います。
セッションを利用するかどうかは、具体的なアプリケーションの要件と特性に依存します。セッションのメリットを最大限に引き出すためには、適切な実装とセキュリティ対策が必要です。
準備
バージョン確認
% node --version v20.10.0 2023年12月20日現在、Node.jsの最新安定版はv20.10.0
% npm show express express@4.18.2 2023年12月20日現在、Expressの最新バージョンは4.18.1
% npm install express-generator -g
% mkdir tera-note % cd tera-note
% express --view=pug teranote % cd teranote
% npm install
% DEBUG=teranote:* npm start
Express で Tailwind を使うには、以下の手順を実行します。 1. npm で Tailwind をインストールします。 2. Tailwind の設定ファイルを作成します。 3. Express アプリで Tailwind を有効にします。 ### 1. npm で Tailwind をインストールする Tailwind をインストールするには、次のコマンドを実行します。 ``` npm install tailwindcss ``` このコマンドを実行すると、Tailwind がインストールされます。 ### 2. Tailwind の設定ファイルを作成する Tailwind の設定ファイルを作成するには、次のコマンドを実行します。 ``` npx tailwindcss init ``` このコマンドを実行すると、`tailwind.config.js` ファイルが作成されます。 `tailwind.config.js` ファイルで、Tailwind の設定を変更することができます。 ### 3. Express アプリで Tailwind を有効にする Express アプリで Tailwind を有効にするには、次の手順を実行します。 1. Express アプリの `index.js` ファイルで、`tailwindcss` を `dependencies` または `devDependencies` に追加します。 2. `index.js` ファイルで、`tailwindcss` を `import` します。 3. `index.js` ファイルで、`express.static()` を使用して、Tailwind の CSS ファイルを読み込みます。 たとえば、次のコードのように `index.js` ファイルを変更すると、Tailwind が有効になります。 ```javascript const express = require('express'); const path = require('path'); const app = express(); // Tailwind CSS を dependencies に追加 // または // Tailwind CSS を devDependencies に追加 app.use(express.static(path.join(__dirname, 'node_modules', 'tailwindcss', 'dist', 'tailwind.min.css'))); app.get('/', (req, res) => { res.send('Hello, world!'); }); app.listen(3000, () => { console.log('Server started on port 3000'); }); ``` このコードを実行すると、Tailwind を使用してレンダリングされた、次の HTML が生成されます。 ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Hello, world!</title> <link href="/tailwind.min.css" rel="stylesheet"> </head> <body> <div class="text-center"> <h1>Hello, world!</h1> </div> </body> </html> ``` ### その他のオプション Tailwind を Express で使用するときに、次のオプションを設定することもできます。 * `tailwind.config.js` ファイルで、`purge` オプションを指定すると、Tailwind で使用されていない CSS を削除できます。 * `tailwind.config.js` ファイルで、`content` オプションを指定すると、Tailwind で使用される CSS を変更できます。 * `index.js` ファイルで、`express.style()` を使用して、Tailwind の CSS を直接適用することもできます。