diff --git a/src/middlewares/news/getNewsList.ts b/src/middlewares/news/getNewsList.ts index b615a06b3d2c47b54d66a97472d09bdce28c3aa6..6ab121d11071a0454b178c972e2bc49dbe9e108e 100644 --- a/src/middlewares/news/getNewsList.ts +++ b/src/middlewares/news/getNewsList.ts @@ -1,21 +1,15 @@ import { Request, Response, NextFunction } from 'express'; -import { News } from '../../models/News.interface'; +import News from '../../models/NewsSchema'; + const getNewsListMiddleware = () => { return (req: Request, res: Response, next: NextFunction) => { - const NewsArray: News[] = []; - - NewsArray.push({ - author: { - userName: 'Chif', - _id: 0, - }, - title: 'Chif news', - text: 'asdasdasdasd', - publishDate: new Date(), - }); - - res.json({ news: NewsArray}); + News.find({}, (err, news) => { + if(!err){ + console.log(news); + res.json({ news: news}); + } + }); } } diff --git a/src/models/NewsSchema.ts b/src/models/NewsSchema.ts new file mode 100644 index 0000000000000000000000000000000000000000..192d2f32d45fead8f1c85c329f550fb9257a6994 --- /dev/null +++ b/src/models/NewsSchema.ts @@ -0,0 +1,31 @@ +import { Document, Schema, model } from 'mongoose'; + +interface INews extends Document { + title : string + text : string + /* author : { + // id: IUser["_id"], + userName: string, + }, + editedBy?: { + // id: IUser["_id"], + userName: string, + }, */ + publishedAt: Date +} + +const NewsSchema = new Schema({ + title : { type: String, required: true }, + text : { type: String, required: true }, + /* author : { + id: { type: Schema.Types.ObjectId, required: true }, + userName: { type: String, required: true } + }, + editedBy: { + id: { type: Schema.Types.ObjectId, required: true }, + userName: { type: String, required: true } + }, */ + publishedAt: { type: Date, required: true }, +}); + +export default model<INews>('News', NewsSchema); \ No newline at end of file