MongoDB を使用してシンプルなスマート ホーム システムを開発する方法
スマート ホーム システムは現代の家庭生活の一部になっています。スマートホームシステムの助けを借りて、携帯電話やその他のデバイスを介して、照明、電化製品、ドアロックなどの家のさまざまなデバイスをリモート制御できます。この記事では、MongoDB を使用してシンプルなスマート ホーム システムを開発する方法を紹介し、読者の参考となる具体的なコード例を示します。
1. システム要件の分析
開発を開始する前に、まずシステム要件を明確にする必要があります。シンプルなスマートホーム システムには次の機能が必要です。
2. データベース設計
上記の要件に基づいて、次のデータベース構造を設計できます:
ユーザー テーブル (ユーザー) :
デバイス テーブル ( devices):
スケジュールされたタスク リスト (タスク):
次にMongoDBとNodeを使います。 js を使用してスマート ホーム システムを開発します。
環境の準備mkdir smart-home-system cd smart-home-system npm init -y npm install express mongodbデータベース接続の作成
const { MongoClient } = require('mongodb'); async function connect() { try { const client = await MongoClient.connect('mongodb://localhost:27017'); const db = client.db('smart-home-system'); console.log('Connected to the database'); return db; } catch (error) { console.log('Failed to connect to the database'); throw error; } } module.exports = { connect };
作成ルートとコントローラー
devices.js:
const express = require('express'); const { ObjectId } = require('mongodb'); const { connect } = require('../db'); const router = express.Router(); router.get('/', async (req, res) => { try { const db = await connect(); const devices = await db.collection('devices').find().toArray(); res.json(devices); } catch (error) { res.status(500).json({ error: error.message }); } }); router.post('/', async (req, res) => { try { const { name, type, status, user_id } = req.body; const db = await connect(); const result = await db.collection('devices').insertOne({ name, type, status, user_id: ObjectId(user_id), }); res.json(result.ops[0]); } catch (error) { res.status(500).json({ error: error.message }); } }); module.exports = router;
Create を追加します。ルート ディレクトリに
controllers フォルダーを作成し、次のコントローラー ファイル devicesController.js:
const { connect } = require('../db'); async function getDevices() { try { const db = await connect(); const devices = await db.collection('devices').find().toArray(); return devices; } catch (error) { throw error; } } async function createDevice(device) { try { const db = await connect(); const result = await db.collection('devices').insertOne(device); return result.ops[0]; } catch (error) { throw error; } } module.exports = { getDevices, createDevice, };
エントリ ファイルを作成します const express = require('express'); const devicesRouter = require('./routes/devices'); const app = express(); app.use(express.json()); app.use('/devices', devicesRouter); app.listen(3000, () => { console.log('Server is running on port 3000'); });
この時点で、シンプルなスマート ホーム システムの開発が完了しました。ユーザー ログインと登録、デバイス管理、スケジュールされたタスク、操作記録機能。
4. 概要この記事では、MongoDB を使用してシンプルなスマート ホーム システムを開発する方法を紹介します。 MongoDB と Node.js を組み合わせて使用することで、データの保存と処理を簡単に処理できます。読者はこのシステムをさらに拡張し、特定のニーズに応じて機能を追加できます。 この記事で提供されているコード例は参考用であり、実際の開発中に実際のニーズに応じて修正および改良する必要があります。 以上がMongoDB を使用してシンプルなスマート ホーム システムを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。