MERN

⌘K
  1. Home
  2. Docs
  3. MERN
  4. Query

Query

models

const { DataTypes } = require('sequelize');
const sequelize = require('../config/db');

const Holiday = sequelize.define('Holiday', {

  HolidayDate: {
    type: DataTypes.DATEONLY,
    allowNull: false,
  },
  Description: {
    type: DataTypes.STRING,
    allowNull: false,
  },
});

module.exports = Holiday;
JavaScript

Basic Crud Query

const Holiday = require('../models/holiday');

// Create 
exports.create = async (req, res) => {
  try {
    const { HolidayDate, Description } = req.body;

    const outputdata = await Holiday.create({
      HolidayDate,
      Description,
    });

    res.json({ outputdata, message: 'Holiday created successfully' });
  } catch (error) {
    res.status(500).json({ error: error.message });
  }
};

// Update 
exports.update = async (req, res) => {
  try {
    const { id } = req.params;
    const { HolidayDate, Description } = req.body;

    const updatedHoliday = await Holiday.update(
      { HolidayDate, Description },
      { where: { id: id } }
    );

    if (updatedHoliday[0] === 0) {
      return res.status(404).json({ error: 'Holiday not found' });
    }

    res.json({ message: 'Holiday updated successfully' });
  } catch (error) {
    res.status(500).json({ error: error.message });
  }
};

// Delete 
exports.delete = async (req, res) => {
  try {
    const { id } = req.params;

    const deletedCount = await Holiday.destroy({
      where: { id: id },
    });

    if (deletedCount === 0) {
      return res.status(404).json({ error: 'Holiday not found' });
    }

    res.json({ message: 'Holiday deleted successfully' });
  } catch (error) {
    res.status(500).json({ error: error.message });
  }
};

// Get All 
exports.all = async (req, res) => {
  try {
    const outputdata = await Holiday.findAll({
      attributes: ['id', 'HolidayDate', 'Description'],
    });

    res.json({ outputdata });
  } catch (error) {
    res.status(500).json({ error: error.message });
  }
};

// Get  by ID
exports.get = async (req, res) => {
  try {
    const { id } = req.params;

    const outputdata = await Holiday.findOne({
      attributes: ['id', 'HolidayDate', 'Description'],
      where: { id: id },
    });

    if (!outputdata) {
      return res.status(404).json({ error: 'Holiday not found' });
    }

    res.json({ outputdata });
  } catch (error) {
    res.status(500).json({ error: error.message });
  }
};
JavaScript

How can we help?