/
aip_fikita
/
test_devops
Обзор
Документация
Войти
/
aip_fikita
/
test_devops
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
backend/app.py
53 строки
1 KB
aip
ewr
15 ноя 2025, 23:20
15 ноя 2025, 23:20
9dff132
Код
Авторство
О чём код?
from flask import Flask, request, jsonify import sqlite3 import datetime import os app = Flask(__name__) DB_PATH = '/data/notes.db' # будем монтировать volume def init_db(): conn = sqlite3.connect(DB_PATH) c = conn.cursor() c.execute(''' CREATE TABLE IF NOT EXISTS notes ( id INTEGER PRIMARY KEY AUTOINCREMENT, content TEXT NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ''') conn.commit() conn.close() @app.before_first_request def setup(): os.makedirs(os.path.dirname(DB_PATH), exist_ok=True) init_db() @app.route('/api/notes', methods=['GET']) def get_notes(): conn = sqlite3.connect(DB_PATH) conn.row_factory = sqlite3.Row c = conn.cursor() c.execute('SELECT * FROM notes ORDER BY created_at DESC LIMIT 50') notes = [dict(row) for row in c.fetchall()] conn.close() return jsonify(notes) @app.route('/api/notes', methods=['POST']) def add_note(): data = request.get_json() content = data.get('content', '').strip()[:300] if not content: return jsonify({'error': 'Пустая заметка'}), 400 conn = sqlite3.connect(DB_PATH) c = conn.cursor() c.execute('INSERT INTO notes (content) VALUES (?)', (content,)) conn.commit() conn.close() return jsonify({'status': 'ok'}), 201 if __name__ == '__main__': app.run(host='0.0.0.0', port=5000)