Как игнорировать нулевые значения в запросе вставки mongodb - PullRequest
0 голосов
/ 25 июня 2019

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

fname = request.values.get('fname')
mname = request.values.get('mname')
lname = request.values.get('lname')
db.users.insert({'fname':fname, 'mname':mname, 'lname':lname})

Я получаю этот вывод:

id:5d11c378f829d8938bf65e0b
fname:"test"
mname:""
lname:"user"

Я хочу это (если mname не указан в форме):

id:5d11c378f829d8938bf65e0b
fname:"test"
lname:"user"

    <form action="/register" method="post">
      First name:<br>
      <input type="text" name="fname" required>
      <br>
       Middle name:<br>
      <input type="text" name="mname">  <!-- optional -->
        <br>
      Last name:<br>
      <input type="text" name="lname" required>
      <br><br>
      <input type="submit" value="Submit">
    </form>
return "Registered successfully!"

1 Ответ

0 голосов
/ 25 июня 2019

Как насчет проверки пустого значения перед вставкой?

var m = request.values.get(‘mname’);
mname = (m) ? m : null;

Или вы можете попробовать вставить объект.

user.fname = request.values.get('fname')
var m = request.values.get(‘mname’)
user.lname = request.values.get('lname')
if (m){
  user.mname = m
}
db.users.insert(user)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...