> > with app.app_context(): > count = 0 > for s in Series.query.filter(Series.slug.is_(None)).all(): > if s.name: > s.slug = generate_slug(s.name) > count += 1 > db.session.commit() > print(f'Generated slugs for {count} series') > " Traceback (most recent call last): File "", line 2, in File "/home/digitalcash24/cricbuzz-live-score.com/app.py", line 43, in db.init_app(app) File "/home/digitalcash24/cricbuzz-live-score.com/venv/lib/python3.8/site-packages/flask_sqlalchemy/extension.py", line 355, in init_app raise RuntimeError( RuntimeError: Either 'SQLALCHEMY_DATABASE_URI' or 'SQLALCHEMY_BINDS' must be set. (venv) root@mail:/home/digitalcash24/cricbuzz-live-score.com# cd /home/digitalcash24/cricbuzz-live-score.com (venv) root@mail:/home/digitalcash24/cricbuzz-live-score.com# source venv/bin/activate (venv) root@mail:/home/digitalcash24/cricbuzz-live-score.com# (venv) root@mail:/home/digitalcash24/cricbuzz-live-score.com# # .env file load करके run करो (venv) root@mail:/home/digitalcash24/cricbuzz-live-score.com# export $(cat .env | xargs) && python3 -c " > from app import app, db > from models import Series > import unicodedata > import re > > def generate_slug(text): > if not text: > return None > text = unicodedata.normalize('NFKD', text).encode('ascii', 'ignore').decode('ascii') > text = text.lower().strip() > text = re.sub(r'[^\w\s-]', '', text) > text = re.sub(r'[-\s]+', '-', text) > return text.strip('-') > > with app.app_context(): > count = 0 > for s in Series.query.filter(Series.slug.is_(None)).all(): > if s.name: > s.slug = generate_slug(s.name) > count += 1 > db.session.commit() > print(f'Generated slugs for {count} series') > " DEBUG:tzlocal:/etc/timezone found, contents: Europe/Berlin DEBUG:tzlocal:/etc/localtime found DEBUG:tzlocal:2 found: {'/etc/timezone': 'Europe/Berlin', '/etc/localtime is a symlink to': 'Europe/Berlin'} INFO:root:Generated slugs: 0 teams, 0 players, 16 series INFO:apscheduler.scheduler:Adding job tentatively -- it will be properly scheduled when the scheduler starts [SCHEDULER] Daily scrape scheduled at 23:17 INFO:apscheduler.scheduler:Adding job tentatively -- it will be properly scheduled when the scheduler starts [SCHEDULER] Women series scrape scheduled at 23:49 INFO:apscheduler.scheduler:Added job "init_scheduler.." to job store "default" INFO:apscheduler.scheduler:Added job "init_scheduler.." to job store "default" INFO:apscheduler.scheduler:Scheduler started DEBUG:apscheduler.scheduler:Looking for jobs to run DEBUG:apscheduler.scheduler:Next wakeup is due at 2026-01-31 23:17:00+01:00 (in 84194.773152 seconds) Traceback (most recent call last): File "", line 3, in ImportError: cannot import name 'Series' from 'models' (/home/digitalcash24/cricbuzz-live-score.com/models.py) INFO:apscheduler.scheduler:Scheduler has been shut down DEBUG:apscheduler.scheduler:Looking for jobs to run DEBUG:apscheduler.scheduler:No jobs; waiting until a job is added (venv) root@mail:/home/digitalcash24/cricbuzz-live-score.com# export $(cat .env | xargs) && python3 -c " > from app import app, db, Series > import unicodedata > import re > > def generate_slug(text): > if not text: > return None > text = unicodedata.normalize('NFKD', text).encode('ascii', 'ignore').decode('ascii') > text = text.lower().strip() > text = re.sub(r'[^\w\s-]', '', text) > text = re.sub(r'[-\s]+', '-', text) > return text.strip('-') > > with app.app_context(): > count = 0 > for s in Series.query.filter(Series.slug.is_(None)).all(): > if s.name: > s.slug = generate_slug(s.name) > count += 1 > db.session.commit() > print(f'Generated slugs for {count} series') > " DEBUG:tzlocal:/etc/timezone found, contents: Europe/Berlin DEBUG:tzlocal:/etc/localtime found DEBUG:tzlocal:2 found: {'/etc/timezone': 'Europe/Berlin', '/etc/localtime is a symlink to': 'Europe/Berlin'} INFO:root:Generated slugs: 0 teams, 0 players, 33 series INFO:apscheduler.scheduler:Adding job tentatively -- it will be properly scheduled when the scheduler starts [SCHEDULER] Daily scrape scheduled at 23:17 INFO:apscheduler.scheduler:Adding job tentatively -- it will be properly scheduled when the scheduler starts [SCHEDULER] Women series scrape scheduled at 23:49 INFO:apscheduler.scheduler:Adding job tentatively -- it will be properly scheduled when the scheduler starts [SCHEDULER] League series scrape scheduled at 23:55 INFO:apscheduler.scheduler:Adding job tentatively -- it will be properly scheduled when the scheduler starts [SCHEDULER] International series scrape scheduled at 23:55 INFO:apscheduler.scheduler:Adding job tentatively -- it will be properly scheduled when the scheduler starts [SCHEDULER] Domestic series scrape scheduled at 23:55 INFO:apscheduler.scheduler:Added job "init_scheduler.." to job store "default" INFO:apscheduler.scheduler:Added job "init_scheduler.." to job store "default" INFO:apscheduler.scheduler:Added job "init_scheduler.." to job store "default" INFO:apscheduler.scheduler:Added job "init_scheduler.." to job store "default" INFO:apscheduler.scheduler:Added job "init_scheduler.." to job store "default" INFO:apscheduler.scheduler:Scheduler started DEBUG:apscheduler.scheduler:Looking for jobs to run DEBUG:apscheduler.scheduler:Next wakeup is due at 2026-01-31 23:17:00+01:00 (in 84031.283127 seconds) Generated slugs for 0 series INFO:apscheduler.scheduler:Scheduler has been shut down DEBUG:apscheduler.scheduler:Looking for jobs to run DEBUG:apscheduler.scheduler:No jobs; waiting until a job is added (venv) root@mail:/home/digitalcash24/cricbuzz-live-score.com#