Mongo DB konspekst

MongoDB

Loomine users

Kontrollisin, kas üldse kasutajaid on.

Kontrollisin, kas seal on 19 aastane kasutaja

Kontrollitud, kas on teisi 19 aastaseid ja juhusliku nimega kasutajaid

Kontrollisin vanuse ja nime järgi, kas selline kasutaja on olemas

Kirjutasin päringu kasutaja leidmiseks nime ja vanuse järgi

Kirjutasin päringu, et leida kõik alla 20 aastased kasutajad

Kirjutasin teise päringu, et leida kõik alla 19 aastased kasutajad

Kirjutasin päringu, et leida kõik kasutajad, kes on üle 19 aasta vanad

GT

GTE

Kirjutasin päringu, et leida kõik kasutajad, kes pole 19 aastased

Kirjutasin päringu, et leida kõik kasutajad, kelle vanus on üle 1 aasta

Kirjutasin kasutajate leidmiseks päringu ja seadsin limiidiks 4

Kirjutas päringu kasutaja leidmiseks ID järgi

Kirjutasin päringu kasutaja leidmiseks vanuse järgi ja panin limiidiks 1

Kirjutasin nime uuendamise taotluse ja asendasin selle

Kirjutasin taotluse kasutajate nime muutmiseks täisnimeks

Kirjutas taotluse ühe 20 aastase kasutaja kustutamiseks

Kirjutasin taotluse ühe kasutaja vsevolod kustutamiseks ja kasutaja nastya lisamiseks

Kirjutasin kasutaja vsevolodi värskendamise taotluse + kirjutasin talle mongoDB ja JavaScripti kohta

MongoDB Users

Kirjutas päringu kasutaja leidmiseks koos tema andmetega

Kirjutasin päringu kasutaja leidmiseks tema postituse järgi

Kirjutas postituste leidmiseks päringu

Minu lõplik kood

const express = require("express")
const { MongoClient } = require("mongodb")
const bodyParser = require("body-parser")

const app = express()
const port = 3000

const client = new MongoClient(
"mongodb+srv://Dariuss:Bomboklad234@cluster0.2hypbjh.mongodb.net/Mongo?retryWrites=true&w=majority&appName=Cluster0"
)

app.use(bodyParser.urlencoded({ extended: true }))

async function start() {
try {
await client.connect()
console.log("✅ Connected to MongoDB")

const db = client.db("Mongo") // имя БД
const users = db.collection("users")


const count = await users.countDocuments()
if (count === 0) {
await users.insertMany([
{ name: "Dariuss", age: 21 },
{ name: "Anna", age: 19 },
])
}

// ГС
app.get("/", async (req, res) => {
const allUsers = await users.find().toArray()

let html = `
<!DOCTYPE html>
<html lang="et">
<head>
<meta charset="UTF-8">
<title>Kasutajate loend</title>
<style>
body {
font-family: Arial, sans-serif;
background: #f4f7f9;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
min-height: 100vh;
}
header {
background: black;
color: white;
padding: 20px;
text-align: center;
font-size: 24px;
font-weight: bold;
}
main {
flex: 1;
max-width: 800px;
margin: 30px auto;
background: white;
padding: 20px;
border-radius: 12px;
box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
h2 {
margin-top: 0;
color: #333;
text-align: center;
}
ul {
list-style: none;
padding: 0;
}
li {
background: #f9f9f9;
margin: 10px 0;
padding: 15px;
border-radius: 8px;
font-size: 18px;
display: flex;
justify-content: space-between;
align-items: center;
box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}
li span {
color: #555;
}
form {
margin-top: 20px;
text-align: center;
}
input {
padding: 10px;
margin: 5px;
border-radius: 6px;
border: 1px solid #ccc;
}
button {
padding: 10px 20px;
border: none;
background: black;
color: white;
font-weight: bold;
border-radius: 6px;
cursor: pointer;
}
button:hover {
background: #333;
}
footer {
background: #333;
color: #aaa;
text-align: center;
padding: 15px;
font-size: 14px;
}
footer a {
color: white;
text-decoration: none;
}
</style>
</head>
<body>
<header>
👥 Kasutaja paneel
</header>
<main>
<h2>Kasutajate loend</h2>
<ul>
`

allUsers.forEach((u) => {
html += `<li><b>${u.name}</b> <span>${u.age} aastat</span></li>`
})

html += `
</ul>
<h2>Lisa uus kasutaja</h2>
<form method="POST" action="/add">
<input type="text" name="name" placeholder="Nimi" required>
<input type="number" name="age" placeholder="Vanus" required>
<button type="submit">Lisa</button>
</form>
</main>
<footer>
© ${new Date().getFullYear()} | Valmistatud ❤️ abil Node.js + MongoDB <br>
<a href="#">Meie kohta</a> | <a href="#">Kontaktid</a>
</footer>
</body>
</html>
`

res.send(html)
})

// Обработка формы добавления
app.post("/add", async (req, res) => {
const { name, age } = req.body
await users.insertOne({ name, age: parseInt(age) })
res.redirect("/")
})

app.listen(port, () => {
console.log(`🚀 Server start: http://localhost:${port}`)
})
} catch (e) {
console.error(e)
}
}

start()

Tööde kontrollimine

https://mongodb.davidmyrseth23.thkit.ee/