質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
MongoDB

MongoDBはオープンソースのドキュメント指向データベースの1つです。高性能で、多くのリトルエンディアンシステムを利用することができます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Express

ExpressはNode.jsのWebアプリケーションフレームワークです。 マルチページを構築するための機能セットおよびハイブリッドのWebアプリケーションを提供します。

Q&A

0回答

851閲覧

すでにデプロイ済みのmongoDB/Express.jsアプリのデータを取得するアプリを別で作成し、デプロイしてもよいのでしょうか?

3dkoi

総合スコア14

MongoDB

MongoDBはオープンソースのドキュメント指向データベースの1つです。高性能で、多くのリトルエンディアンシステムを利用することができます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Express

ExpressはNode.jsのWebアプリケーションフレームワークです。 マルチページを構築するための機能セットおよびハイブリッドのWebアプリケーションを提供します。

0グッド

0クリップ

投稿2021/07/12 12:12

すでにデプロイ済みのmongoDB/Express.jsアプリのデータを取得するアプリを別で作成し、デプロイしてもよいのでしょうか?これはイレギュラーなことでしょうか?

同じDataBaseに対して別のアプリを作ることがあるのなら、問題ないのかなと思っておりますが、もしものことを考えると不安です。知っている方がいらっしゃればご教示お願いしたいです。私自身が基準を持ち合わせていないことが原因です。

デプロイ済みのアプリはアンケートアプリです。

仕様は簡単なフォームアンケートでDatabaseが絡むのは1つのpost関数のみです。
デプロイ先はHerokuで、無料のもの、addonでschdulerをいれています。DBはmonogoDBで,
次のような絶対パスになります。

javascript

1require('dotenv').config() 2if(process.env.NODE_ENV === 'production') { 3 module.exports = { 4 mongoURI: process.env.DB, 5 secret: 'mytest-question' 6 } 7} else { 8 module.exports = { 9 mongoURI: "mongodb://localhost:27017/questions", 10 secret: 'mytest-question' 11 } 12} 13 14コード

別のアプリではデータを取得して表示させるアプリです。

まだ作成途中ではありますが、次のようなコードでデータを取得します。

javascript

1//questions.js 2const router = express.Router() 3const { dbConnect } = require('../middleware/connection.js') 4 5 6dbConnect() 7 8mongoose.model('Question', new Schema({url: String, text: String, id: Number}), 'questions') 9 10var connection = mongoose.connection; 11 12 13router.get('/questions', async (req, res) => { 14 try { 15 16 await connection.db.collection("questions", function(err, collection){ 17 collection.find({}).toArray(function(err, data){ 18 res.send({ 19 data: data 20 }) 21 }) 22 }); 23 24 }catch(err) { 25 console.log(err) 26 } 27}) 28 29module.exports = router; 30

javascript

1 2// connection.js 3const mongoose = require('mongoose'); 4const db = require('../config/keys').mongoURI; 5 6 7 8module.exports = { 9 dbConnect(req, res, next) { 10 mongoose.connect(db, { useNewUrlParser:true, useUnifiedTopology: true}) 11 .then(() => { 12 console.log('DB接続しました') 13 }) 14 .catch((err) => { 15 console.log('err:DB接続できませんでした',err ) 16 }) 17 } 18} 19

DBはデプロイしているアプリのDBを使用したいです。

問題ないのでしょうか。

気になっているのはイレギュラーなことをしようとしているのか、それとも普通のことをしているのかの基準がないので解消したいです。

ご意見ありましたらコメントお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問