С недавнего времени начал изучать Node, фреймоворк ExpressJS... задался вопросом по структуре файлов проекта, сделал вот такую вот сборку, нужно ваше мнения.. или есть готовые решении?
backend
. . . controllers
. . . . . . posts.controller.js
. . . models
. . . . . . posts.models.js
. . . db.js
. . . router.js
. . . server.js
posts.models.jsconst mongoose = require('mongoose');
const postsSchema = mongoose.Schema({
title: String,
description: String,
date: {
type: Date,
default: Date.now()
}
});
module.exports = mongoose.model('posts', postsSchema);
posts.controller.jsconst Posts = require('../models/posts.models');
exports.module = {
async post (req, res) {
const post = new Posts({
title: req.body.title,
description: req.body.description
});
await post.save();
res.json({
message: 'created',
data: post
})
},
async all (req, res) {
const posts = await Posts.find()
res.json({
data: posts
})
}
};
router.jsconst load = (controller) => require(`./controllers/${controller}.js`);
module.exports = function (app) {
app.get('/', load('posts.controller').module.all);
app.post('/posts', load('posts.controller').module.post);
};
server.jsconst express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const db = require('./db');
const app = express();
app.use(cors());
app.use(bodyParser.json());
require('./router')(app);
db.connect('mongodb://localhost:27017/blog', (err) => {
if (err) return console.log(err);
app.listen('3000', () => console.log('Server started'))
});