Created
December 18, 2018 06:52
-
-
Save Freizello/6311007bd2f777f998db67cb1670800f to your computer and use it in GitHub Desktop.
[Route Example for ExpressJS - part 1] Next we create routes for all the URLs needed by the LocalLibrary website, which will call the controller functions we defined in the previous section. The skeleton already has a ./routes folder containing routes for the index and users. Create another route file — catalog.js — inside this folder, as shown.…
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var express = require('express'); | |
var router = express.Router(); | |
// Require controller modules. | |
var book_controller = require('../controllers/bookController'); | |
var author_controller = require('../controllers/authorController'); | |
var genre_controller = require('../controllers/genreController'); | |
var book_instance_controller = require('../controllers/bookinstanceController'); | |
/// BOOK ROUTES /// | |
// GET catalog home page. | |
router.get('/', book_controller.index); | |
// GET request for creating a Book. NOTE This must come before routes that display Book (uses id). | |
router.get('/book/create', book_controller.book_create_get); | |
// POST request for creating Book. | |
router.post('/book/create', book_controller.book_create_post); | |
// GET request to delete Book. | |
router.get('/book/:id/delete', book_controller.book_delete_get); | |
// POST request to delete Book. | |
router.post('/book/:id/delete', book_controller.book_delete_post); | |
// GET request to update Book. | |
router.get('/book/:id/update', book_controller.book_update_get); | |
// POST request to update Book. | |
router.post('/book/:id/update', book_controller.book_update_post); | |
// GET request for one Book. | |
router.get('/book/:id', book_controller.book_detail); | |
// GET request for list of all Book items. | |
router.get('/books', book_controller.book_list); | |
/// AUTHOR ROUTES /// | |
// GET request for creating Author. NOTE This must come before route for id (i.e. display author). | |
router.get('/author/create', author_controller.author_create_get); | |
// POST request for creating Author. | |
router.post('/author/create', author_controller.author_create_post); | |
// GET request to delete Author. | |
router.get('/author/:id/delete', author_controller.author_delete_get); | |
// POST request to delete Author. | |
router.post('/author/:id/delete', author_controller.author_delete_post); | |
// GET request to update Author. | |
router.get('/author/:id/update', author_controller.author_update_get); | |
// POST request to update Author. | |
router.post('/author/:id/update', author_controller.author_update_post); | |
// GET request for one Author. | |
router.get('/author/:id', author_controller.author_detail); | |
// GET request for list of all Authors. | |
router.get('/authors', author_controller.author_list); | |
/// GENRE ROUTES /// | |
// GET request for creating a Genre. NOTE This must come before route that displays Genre (uses id). | |
router.get('/genre/create', genre_controller.genre_create_get); | |
//POST request for creating Genre. | |
router.post('/genre/create', genre_controller.genre_create_post); | |
// GET request to delete Genre. | |
router.get('/genre/:id/delete', genre_controller.genre_delete_get); | |
// POST request to delete Genre. | |
router.post('/genre/:id/delete', genre_controller.genre_delete_post); | |
// GET request to update Genre. | |
router.get('/genre/:id/update', genre_controller.genre_update_get); | |
// POST request to update Genre. | |
router.post('/genre/:id/update', genre_controller.genre_update_post); | |
// GET request for one Genre. | |
router.get('/genre/:id', genre_controller.genre_detail); | |
// GET request for list of all Genre. | |
router.get('/genres', genre_controller.genre_list); | |
/// BOOKINSTANCE ROUTES /// | |
// GET request for creating a BookInstance. NOTE This must come before route that displays BookInstance (uses id). | |
router.get('/bookinstance/create', book_instance_controller.bookinstance_create_get); | |
// POST request for creating BookInstance. | |
router.post('/bookinstance/create', book_instance_controller.bookinstance_create_post); | |
// GET request to delete BookInstance. | |
router.get('/bookinstance/:id/delete', book_instance_controller.bookinstance_delete_get); | |
// POST request to delete BookInstance. | |
router.post('/bookinstance/:id/delete', book_instance_controller.bookinstance_delete_post); | |
// GET request to update BookInstance. | |
router.get('/bookinstance/:id/update', book_instance_controller.bookinstance_update_get); | |
// POST request to update BookInstance. | |
router.post('/bookinstance/:id/update', book_instance_controller.bookinstance_update_post); | |
// GET request for one BookInstance. | |
router.get('/bookinstance/:id', book_instance_controller.bookinstance_detail); | |
// GET request for list of all BookInstance. | |
router.get('/bookinstances', book_instance_controller.bookinstance_list); | |
module.exports = router; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment