Tengo un formulario que se supone que debe tomar cinco valores de fecha, estas fechas (en algunos casos) se refieren a tareas en el futuro, por lo que no siempre es necesario que tengan un valor. Como resultado, hay situaciones en las que el usuario puede pasar tres fechas en el formulario de adición pero dejar las otras dos fechas en blanco. Mi código funcionaba perfectamente siempre que el usuario ingresara las cinco fechas, pero ahora que algunas se dejan en blanco, no puedo hacer que la aplicación funcione.
Base de datos: esta consulta funciona bien con un valor nulo, por lo que sé que una columna de fecha puede ser NULL
INSERT INTO applicants (store, first_name, last_name, position, date_in,recruiterscreen_completion,testing_completion, interview_completion, backgroundcheck_completion, drugscreen_completion, paperwork_completion) VALUES ('Autoexpress','Test','test','Salesperson','2/21/22',NULL,'2/20/22','2/21/22','2/20/22','2/21/22','2/20/22') RETURNING *Código de back-end: sin embargo, cuando paso el valor, recibo errores
/*ADD NEW APPLICANT REQUEST*/ const addApplicant = async (req, res) => { const errors = validationResult(req); if (!errors.isEmpty()) { return res.status(400).json({ errors: errors.array() }); } const { store, first_name, last_name, position, recruiterscreen_completion,testing_completion,backgroundcheck_completion,interview_completion,drugscreen_completion,paperwork_completion, date_in } = req.body; try { console.log(recruiterscreen_completion) const applicants = await queryInstance(`INSERT INTO applicants (store, first_name,last_name,position, recruiterscreen_completion,testing_completion,backgroundcheck_completion,interview_completion,drugscreen_completion,paperwork_completion, date_in) VALUES ('${store}', '${first_name}', '${last_name}', '${position}', '${recruiterscreen_completion}', '${testing_completion}', '${backgroundcheck_completion}','${interview_completion}','${drugscreen_completion}','${paperwork_completion}','${date_in}') RETURNING *`); res.json({ applicants }); } catch (err) { console.error(err.message); return res.status(500).send(err.message); } };Agregar formulario (Ejemplo de uno de los elementos del formulario)
<label className="add-form-label-long" htmlFor="recruiterscreen_completion"> Recrutier Screen <input type="date" id="recruiterscreen_completion" name="recruiterscreen_completion" onChange={handleFormChange} value={formData.recruiterscreen_completion} ></input> </label>Si el usuario no selecciona ninguna fecha en el menú desplegable, ¿pasa un valor NULL? ¿O es indefinido? ¿Cómo resuelvo?