added articles api and desert.txt to the seed
This commit is contained in:
parent
b370724294
commit
f5c3a13fde
35
api/articles.js
Normal file
35
api/articles.js
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
const router = require('express').Router()
|
||||||
|
const { Article } = require('../db/models')
|
||||||
|
module.exports = router
|
||||||
|
|
||||||
|
router.get('/', async (req, res, next) => {
|
||||||
|
try {
|
||||||
|
const articles = await Article.findAll()
|
||||||
|
|
||||||
|
res.status(201).send(articles)
|
||||||
|
} catch (err) {
|
||||||
|
next(err)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
router.get('/:id', async (req, res, next) => {
|
||||||
|
try {
|
||||||
|
const article = await Article.findById(req.params.id)
|
||||||
|
console.log(article.title)
|
||||||
|
console.log("by: " + article.author)
|
||||||
|
console.log(article.text)
|
||||||
|
res.status(201).send(article)
|
||||||
|
} catch (err) {
|
||||||
|
next(err)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
router.post('/', async (req, res, next) => {
|
||||||
|
const body = req.body
|
||||||
|
try {
|
||||||
|
const article = await Article.create(body)
|
||||||
|
res.redirect(article.id)
|
||||||
|
} catch (err) {
|
||||||
|
next(err)
|
||||||
|
}
|
||||||
|
})
|
@ -2,10 +2,11 @@ const router = require('express').Router()
|
|||||||
module.exports = router
|
module.exports = router
|
||||||
|
|
||||||
router.use('/items', require('./items'))
|
router.use('/items', require('./items'))
|
||||||
|
router.use('/articles', require('./articles'))
|
||||||
|
|
||||||
router.get('/', async (req, res, next) => {
|
router.get('/', async (req, res, next) => {
|
||||||
try {
|
try {
|
||||||
res.send('Hello from Express!')
|
res.send('/n-------/nHello from Express!/n--------/n')
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
next(err)
|
next(err)
|
||||||
}
|
}
|
||||||
|
1
api/postcommand
Normal file
1
api/postcommand
Normal file
@ -0,0 +1 @@
|
|||||||
|
curl -d {"title":"", "text": ""} -H Content-Type: application/json -X POST http://localhost:1337/api/articles
|
1248
db/desert.txt
Normal file
1248
db/desert.txt
Normal file
File diff suppressed because it is too large
Load Diff
20
db/models/article.js
Normal file
20
db/models/article.js
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
const Sequelize = require('sequelize')
|
||||||
|
const db = require('../db')
|
||||||
|
|
||||||
|
const Article = db.define('articles', {
|
||||||
|
title: {
|
||||||
|
type: Sequelize.STRING,
|
||||||
|
allowNull: false
|
||||||
|
},
|
||||||
|
author: {
|
||||||
|
type: Sequelize.STRING,
|
||||||
|
defaultValue: "anonymous"
|
||||||
|
},
|
||||||
|
|
||||||
|
text: {
|
||||||
|
type: Sequelize.TEXT,
|
||||||
|
allowNull: false
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
module.exports = Article
|
@ -1,3 +1,4 @@
|
|||||||
const Item = require('./item')
|
const Item = require('./item')
|
||||||
|
const Article = require('./article')
|
||||||
|
|
||||||
module.exports = { Item }
|
module.exports = { Item, Article }
|
||||||
|
45
db/seed.js
45
db/seed.js
@ -1,24 +1,37 @@
|
|||||||
const db = require('../db')
|
const db = require('../db')
|
||||||
const { Item } = require('./models')
|
const fs = require("fs")
|
||||||
|
const { Item, Article } = require('./models')
|
||||||
|
|
||||||
|
const desert = fs.readFileSync("/home/notnull/projex/bootstrap/server/db/desert.txt", "utf8")
|
||||||
|
|
||||||
|
|
||||||
const testItem = {
|
const testItem = {
|
||||||
name: 'item'
|
name: 'item'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const testArticle = {
|
||||||
|
title: "Desert",
|
||||||
|
text: desert
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log(Article)
|
||||||
async function runSeed() {
|
async function runSeed() {
|
||||||
await db.sync({ force: true })
|
await db.sync({ force: true })
|
||||||
console.log('db synced!')
|
console.log('db synced!')
|
||||||
console.log('seeding...')
|
console.log('seeding...')
|
||||||
try {
|
try {
|
||||||
await Item.create(testItem)
|
await Item.create(testItem)
|
||||||
console.log('seeded successfully')
|
await Article.create(testArticle)
|
||||||
} catch (err) {
|
console.log('seeded successfully')
|
||||||
console.error(err)
|
} catch (err) {
|
||||||
process.exitCode = 1
|
console.error(err)
|
||||||
} finally {
|
process.exitCode = 1
|
||||||
console.log('closing db connection')
|
} finally {
|
||||||
await db.close()
|
console.log('closing db connection')
|
||||||
console.log('db connection closed')
|
await db.close()
|
||||||
}
|
console.log('db connection closed')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
runSeed()
|
runSeed()
|
||||||
|
Loading…
Reference in New Issue
Block a user