1
0
Fork 0
mirror of https://github.com/EDeev/web-dev.git synced 2026-10-08 04:59:37 +03:00

Режим отладки и SECRET_KEY из окружения, зависимости lab-4/5 закреплены

- app.run(debug=True) во всех лабораторных и экзамене заменён на FLASK_DEBUG=1 из
  окружения: отладчик Werkzeug позволяет выполнять код на сервере;
- secret_key — из SECRET_KEY, прежние значения остались только как запасные;
- lab-4/5: Flask-SQLAlchemy 2.5 + SQLAlchemy 1.4 (со свежим SQLAlchemy 2 не импортировались);
- неиспользуемые импорты и переменные удалены (ruff).
This commit is contained in:
Деев Егор Викторович 2026-10-02 21:27:00 +00:00
parent 950154e23d
commit 69ced80d88
15 changed files with 29 additions and 26 deletions

View file

@ -9,7 +9,7 @@ import bleach
import markdown import markdown
app = Flask(__name__) app = Flask(__name__)
app.secret_key = 'exam-secret-key-2026' app.secret_key = os.environ.get('SECRET_KEY', 'exam-secret-key-2026')
_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) _ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
app.config['UPLOAD_FOLDER'] = os.path.join(os.path.dirname(__file__), 'static', 'uploads') app.config['UPLOAD_FOLDER'] = os.path.join(os.path.dirname(__file__), 'static', 'uploads')

View file

@ -8,4 +8,4 @@ if __name__ == '__main__':
with app.app_context(): with app.app_context():
if not os.path.exists(app.config['DATABASE']): if not os.path.exists(app.config['DATABASE']):
init_db() init_db()
app.run(debug=True) app.run(debug=os.environ.get('FLASK_DEBUG') == '1')

View file

@ -1,5 +1,4 @@
import random import random
import math
def circle_square_mk(r, n): def circle_square_mk(r, n):
inside = 0 inside = 0

View file

@ -1,4 +1,3 @@
import operator
def person_lister(f): def person_lister(f):
def inner(people): def inner(people):

View file

@ -2,7 +2,6 @@ import pytest
import math import math
import os import os
import subprocess import subprocess
import tempfile
from fact import fact_it, fact_rec from fact import fact_it, fact_rec
from show_employee import show_employee from show_employee import show_employee
from sum_and_sub import sum_and_sub from sum_and_sub import sum_and_sub
@ -11,7 +10,7 @@ from my_sum import my_sum
from email_validation import fun from email_validation import fun
from fibonacci import fibonacci from fibonacci import fibonacci
from average_scores import compute_average_scores from average_scores import compute_average_scores
from plane_angle import Point, plane_angle from plane_angle import Point
from complex_numbers import Complex from complex_numbers import Complex
from circle_square_mk import circle_square_mk from circle_square_mk import circle_square_mk
from log_decorator import function_logger from log_decorator import function_logger

View file

@ -1,3 +1,4 @@
import os
import random import random
from flask import Flask, render_template from flask import Flask, render_template
from faker import Faker from faker import Faker
@ -48,4 +49,4 @@ def about():
return render_template('about.html', title='Об авторе') return render_template('about.html', title='Об авторе')
if __name__ == '__main__': if __name__ == '__main__':
app.run(debug=True) app.run(debug=os.environ.get('FLASK_DEBUG') == '1')

View file

@ -1,3 +1,4 @@
import os
import re import re
import random import random
from flask import Flask, render_template, request from flask import Flask, render_template, request
@ -104,4 +105,4 @@ def phone():
) )
if __name__ == '__main__': if __name__ == '__main__':
app.run(debug=True) app.run(debug=os.environ.get('FLASK_DEBUG') == '1')

View file

@ -1,3 +1,4 @@
import os
import re import re
import random import random
from flask import Flask, render_template, request, session, redirect, url_for, flash from flask import Flask, render_template, request, session, redirect, url_for, flash
@ -8,7 +9,7 @@ fake = Faker('ru_RU')
app = Flask(__name__) app = Flask(__name__)
application = app application = app
app.secret_key = '1234567890secret' app.secret_key = os.environ.get('SECRET_KEY', '1234567890secret')
login_manager = LoginManager() login_manager = LoginManager()
login_manager.init_app(app) login_manager.init_app(app)
@ -166,4 +167,4 @@ def phone():
) )
if __name__ == '__main__': if __name__ == '__main__':
app.run(debug=True) app.run(debug=os.environ.get('FLASK_DEBUG') == '1')

View file

@ -1,7 +1,8 @@
import os
import re import re
import random import random
from datetime import datetime from datetime import datetime
from flask import Flask, render_template, request, session, redirect, url_for, flash, abort from flask import Flask, render_template, request, session, redirect, url_for, flash
from flask_login import LoginManager, UserMixin, login_user, logout_user, login_required, current_user from flask_login import LoginManager, UserMixin, login_user, logout_user, login_required, current_user
from flask_sqlalchemy import SQLAlchemy from flask_sqlalchemy import SQLAlchemy
from flask_bcrypt import Bcrypt from flask_bcrypt import Bcrypt
@ -11,7 +12,7 @@ fake = Faker('ru_RU')
app = Flask(__name__) app = Flask(__name__)
application = app application = app
app.secret_key = '1234567890secret' app.secret_key = os.environ.get('SECRET_KEY', '1234567890secret')
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///users.db' app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///users.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
@ -447,4 +448,4 @@ def change_password():
if __name__ == '__main__': if __name__ == '__main__':
app.run(debug=True) app.run(debug=os.environ.get('FLASK_DEBUG') == '1')

View file

@ -7,6 +7,7 @@ MarkupSafe==2.1.1
python-dateutil==2.8.2 python-dateutil==2.8.2
six==1.16.0 six==1.16.0
Werkzeug==2.0.3 Werkzeug==2.0.3
Flask-Login Flask-Login==0.6.3
Flask-SQLAlchemy Flask-SQLAlchemy==2.5.1
Flask-Bcrypt SQLAlchemy==1.4.54
Flask-Bcrypt==1.0.1

View file

@ -1,8 +1,9 @@
import os
import re import re
import random import random
from functools import wraps from functools import wraps
from datetime import datetime from datetime import datetime
from flask import Flask, render_template, request, session, redirect, url_for, flash, abort from flask import Flask, render_template, request, session, redirect, url_for, flash
from flask_login import LoginManager, UserMixin, login_user, logout_user, login_required, current_user from flask_login import LoginManager, UserMixin, login_user, logout_user, login_required, current_user
from flask_sqlalchemy import SQLAlchemy from flask_sqlalchemy import SQLAlchemy
from flask_bcrypt import Bcrypt from flask_bcrypt import Bcrypt
@ -12,7 +13,7 @@ fake = Faker('ru_RU')
app = Flask(__name__) app = Flask(__name__)
application = app application = app
app.secret_key = '1234567890secret' app.secret_key = os.environ.get('SECRET_KEY', '1234567890secret')
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///users.db' app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///users.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
@ -515,4 +516,4 @@ with app.app_context():
if __name__ == '__main__': if __name__ == '__main__':
app.run(debug=True) app.run(debug=os.environ.get('FLASK_DEBUG') == '1')

View file

@ -51,7 +51,7 @@ def index():
return redirect(url_for('index')) return redirect(url_for('index'))
m = _get_app_module() m = _get_app_module()
db, VisitLog = m.db, m.VisitLog VisitLog = m.VisitLog
page = request.args.get('page', 1, type=int) page = request.args.get('page', 1, type=int)
per_page = 10 per_page = 10

View file

@ -7,6 +7,7 @@ MarkupSafe==2.1.1
python-dateutil==2.8.2 python-dateutil==2.8.2
six==1.16.0 six==1.16.0
Werkzeug==2.0.3 Werkzeug==2.0.3
Flask-Login Flask-Login==0.6.3
Flask-SQLAlchemy Flask-SQLAlchemy==2.5.1
Flask-Bcrypt SQLAlchemy==1.4.54
Flask-Bcrypt==1.0.1

View file

@ -1,6 +1,6 @@
import os import os
SECRET_KEY = 'secret-key' SECRET_KEY = os.environ.get('SECRET_KEY', 'secret-key')
SQLALCHEMY_DATABASE_URI = 'sqlite:///project.db' SQLALCHEMY_DATABASE_URI = 'sqlite:///project.db'
SQLALCHEMY_TRACK_MODIFICATIONS = False SQLALCHEMY_TRACK_MODIFICATIONS = False

View file

@ -1,7 +1,6 @@
import os import os
from typing import Optional, Union, List from typing import Optional, List
from datetime import datetime from datetime import datetime
import sqlalchemy as sa
from werkzeug.security import check_password_hash, generate_password_hash from werkzeug.security import check_password_hash, generate_password_hash
from flask_login import UserMixin from flask_login import UserMixin
from flask import url_for from flask import url_for