Как ввести форму HTML в MongoDB и затем перетащить из MongoDB в таблицу HTML? - PullRequest
0 голосов
/ 11 апреля 2020

Я пытаюсь создать веб-приложение отслеживания целей, которое при вводе формы для создания новой записи журнала отправляет сообщения в базу данных MongoDB и отображается в таблице в веб-приложении. Однако я не могу понять, как ввести свои данные в MongoDB, а затем извлечь из MongoDB для публикации в таблице в веб-приложении.

Пока что я создал схему goose, которая хорошо работает, и я сделал набросок для поста запроса. Также я создал файл Pug JS для клиентской части. Код следует:

Схема почтового запроса

GoalTracker.post('/goals/log/:id', function(req, res){
    let goal = {};
    let query = {_id:req.params.id};

    let oldArr = goal.goalLog;
    let newArr = [req.body.date, req.body.units];
    goal.goalLog = oldArr.concat(newArr);

    Goal.update(query, goal, function(err){
      if(err){
          console.log(err);
          return;
      }
    });

    res.redirect('/goals/'+currentGoalId);
    res.send('Success');
});

Пн goose Схема

let mongoose = require('mongoose');

let goalSchema = mongoose.Schema({
  title:{
    type: String,
    required: true
  },
  start:{
    type: String,
    required: true
  },
  goalAmount:{
    type: Number,
    required: true
  },
  units:{
    type: String,
    required: true
  },
  currentProgress:{
    type: Number,
    required: true
  },
  goalLog:{
    type: Array,
    required: true
  }
});

let Goal = module.exports = mongoose.model('Goal', goalSchema);

Мопс JS Фрагмент кода для клиентской части

li.list-group-item.task
            h3 Goal Log
            .flex-container.txtb
                table(style='width:100%')
                    tbody
                    - let x = 0;
                    while x < goal.goalLog.length/2
                        tr=x++
                        - let n = 0;
                        while n < goal.goalLog.length
                            td= goal.goalLog[n]= n++
            h3 Add Goal Entry
            form(method='POST', action='/goals/log/'+goal._id)
                input.txtb(name='date' type='text' placeholder='Date (mm/dd/yyyy)')
                input.txtb(name='units' type='number' placeholder=goal.units)
                input.txtb(type='submit' value='Submit Entry')

Схема моего плана Outline of my plan

Это очень запутанная формулировка для моего вопроса, но я не знаю, как еще сказать, и я не могу понять, как это сделать, потому что я просмотрел документы и четыре формы ответов.

Любой Помощь будет принята с благодарностью!

...