diff --git a/src/database/entities/message.rs b/src/database/entities/message.rs
index e51efb5addbaf757d825d9287b28a029a6fc6b72..91349a4ad90a98445a7a09ce77ad237c3d98a555 100644
--- a/src/database/entities/message.rs
+++ b/src/database/entities/message.rs
@@ -51,11 +51,13 @@ impl Message {
                 channels.update_one(
                     doc! { "_id": id },
                     doc! {
-                        "active": true,
-                        "last_message": {
-                            "_id": self.id.clone(),
-                            "author": self.author.clone(),
-                            "short": self.content.chars().take(24).collect::<String>()
+                        "$set": {
+                            "active": true,
+                            "last_message": {
+                                "_id": self.id.clone(),
+                                "author": self.author.clone(),
+                                "short": self.content.chars().take(24).collect::<String>()
+                            }
                         }
                     },
                     None
@@ -70,10 +72,12 @@ impl Message {
                 channels.update_one(
                     doc! { "_id": id },
                     doc! {
-                        "last_message": {
-                            "_id": self.id.clone(),
-                            "author": self.author.clone(),
-                            "short": self.content.chars().take(24).collect::<String>()
+                        "$set": {
+                            "last_message": {
+                                "_id": self.id.clone(),
+                                "author": self.author.clone(),
+                                "short": self.content.chars().take(24).collect::<String>()
+                            }
                         }
                     },
                     None