• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

336
Vistas
Falta el parámetro obligatorio: public_id (Cloudinary)

Estoy pasando por la certificación de desarrollador de pila completa y creando una aplicación de autenticación de devChallenges.io y quiero que el usuario pueda editar su perfil y pasar la nueva imagen de perfil, así como su nombre, biografía, número de teléfono y contraseña en el datos de formulario sin embargo, aparece el error Missing required parameter - public_id . Aquí está mi código a continuación.

 // @route POST /profile/edit/:id // @desc edit profile // @access Private app.put('/profile/edit/:id', upload.single('image'), auth, async (req, res) => { const { name, bio, phone, password } = req.body; try { let user = await AuthUser.findById(req.params.id); // Delete image from cloudinary await cloudinary.uploader.destroy(user.cloudinary_id); // Upload image to cloudinary let result; if (req.file) { result = await cloudinary.uploader.upload(req.file.path); } const data = { name: name || user.name, avatar: result.secure_url || user.avatar, bio: bio || user.bio, phone: phone || user.phone, password: password || user.password, cloudinary_id: result.public_id || user.cloudinary_id, }; // Encrypt password const salt = await bcrypt.genSalt(10); data.password = await bcrypt.hash(password, salt); // Update user = await User.findByIdAndUpdate(req.params.id, data, { new: true }); return res.json(user); } catch (err) { console.error(err.message); res.status(500).send('Server error'); } });

modelos/usuario.js

 const mongoose = require('mongoose'); const UserSchema = new mongoose.Schema({ name: { type: String, default: '', }, email: { type: String, unique: true, required: true, }, password: { type: String, required: true, }, avatar: { type: String, }, bio: { type: String, default: '', }, phone: { type: String, default: '', }, cloudinary_id: { type: String, }, }); module.exports = AuthUser = mongoose.model('AuthUser', UserSchema);
almost 3 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda