class User(db.Model, UserMixin): id = db.Column(db.Integer, primary_key=True) first_name = db.Column(db.String(150)) last_name = db.Column(db.String(150)) username = db.Column(db.String(150), unique=True) password = db.Column(db.String(150)) sex = db.Column(db.String(20)) birthdate = db.Column(db.String(50)) joined = db.Column(db.DateTime(timezone=True), default=func.now()) message = db.relationship('Message') class Message(db.Model): id = db.Column(db.Integer, primary_key=True) sender = db.Column(db.Integer, db.ForeignKey('user.username')) receiver = db.Column(db.String(100)) message = db.Column(db.String(10000)) time_sent = db.Column(db.DateTime(timezone=True), default=func.now()) @views.route('/delete_message', methods=['POST']) def delete_message(): message = json.loads(request.message) message_id = message['id'] message = Message.query.get(message_id) if message: if message.sender == current_user.username: db.session.delete(message) db.session.commit() return jsonify({}) function delete_message(message_id) { fetch("/delete_message", { method: "POST", body: JSON.stringify({ message_id: message_id }), }).then((_res) => { window.location.href = "/"; }); } <button type="button" class="close" onClick="delete_message({{ message.id }})"> <span aria-hidden="true">×</span> </button>Las dos primeras clases son parte del archivo python para configurar la base de datos. La función decorada es parte del archivo python de vistas. La siguiente función es parte del archivo javascript. Y la sección inferior es parte del archivo html.
Estoy creando un sistema de mensajes y tengo problemas para eliminar un mensaje de una base de datos sql usando javascript y Flask. Pycharm dice que "mensaje" es una referencia de atributo no resuelta a la clase "solicitud". ¿Alguien puede ayudarme a entender por qué el mensaje no se elimina del archivo base de datos.db?
Use el método request.json() para obtener sus datos json
@views.route('/delete_message', methods=['POST']) def delete_message(): message = request.json() message_id = message['id'] message = Message.query.get(hermano