From 72ec88eb14ba6d2aa0f8a890f16fc2d26026b5c0 Mon Sep 17 00:00:00 2001 From: helori_ollivier Date: Sun, 26 Apr 2026 16:42:37 +0200 Subject: [PATCH] added get page by id + create page --- api/controller/page.controller.js | 23 +++++++++++++++++++++++ api/models/page.model.js | 10 +++++++++- api/routes/page.routes.js | 2 ++ 3 files changed, 34 insertions(+), 1 deletion(-) diff --git a/api/controller/page.controller.js b/api/controller/page.controller.js index 99ab13b..46ecba5 100644 --- a/api/controller/page.controller.js +++ b/api/controller/page.controller.js @@ -3,4 +3,27 @@ const page = require('../models/page.model'); exports.getPages = async (req, res) => { const pages = await page.findAll(); res.json(pages); +} + +exports.getPageById = async (req, res) => { + const id = req.params.id + + const pages = await page.findAll({ + where: { + pageId: id, + }}, + ); + + res.json(pages); +} + +exports.createPage = async (req, res) => { + const jsonPage = req.body + + page.create({ + pageTitle: jsonPage.name, + pageFolder: jsonPage.folder, + }) + + res.status(201).json("ok"); } \ No newline at end of file diff --git a/api/models/page.model.js b/api/models/page.model.js index f29de77..01b09ef 100644 --- a/api/models/page.model.js +++ b/api/models/page.model.js @@ -28,7 +28,15 @@ const page = db.define('Pages', { type: DataTypes.TEXT, allowNull: true, }, +}, +{ + indexes: [ + { + fields: ['pageTitle', 'pageFolder'], + unique: true, + } + ] }); -page.hasOne(folder, { as: 'pageParentFolder', foreignKey: 'pageFolder', onDelete: 'CASCADE'}) +//page.belongsTo(folder, { as: 'pageParentFolder', foreignKey: 'pageFolder', onDelete: 'CASCADE'}) module.exports = page; \ No newline at end of file diff --git a/api/routes/page.routes.js b/api/routes/page.routes.js index 7e9a138..a1e8391 100644 --- a/api/routes/page.routes.js +++ b/api/routes/page.routes.js @@ -4,5 +4,7 @@ const router = express.Router(); const pageController = require('../controller/page.controller') router.get('/pages', pageController.getPages); +router.get('/pages/:id', pageController.getPageById); +router.post('/pages', pageController.createPage); module.exports = router; \ No newline at end of file