Django+apscheduler如何配置apscheduler以使用Django-db连接数据设置.py?

2024-10-02 22:25:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个正在工作的Django项目及其数据库和模型桌子。现在,我希望使用Django数据库连接集成APScheduler并将APScheduler作业与其他表保存在同一个数据库中。在

我已经阅读了User Guide,其中给出了将db连接字符串硬编码为代码的示例:

from pytz import utc

from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.jobstores.mongodb import MongoDBJobStore
from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore
from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor


jobstores = {
    'mongo': MongoDBJobStore(),
    'default': SQLAlchemyJobStore(url='sqlite:///jobs.sqlite')
}
executors = {
    'default': ThreadPoolExecutor(20),
    'processpool': ProcessPoolExecutor(5)
}
job_defaults = {
    'coalesce': False,
    'max_instances': 3
}
scheduler = BackgroundScheduler(jobstores=jobstores, executors=executors, job_defaults=job_defaults, timezone=utc)

但是配置数据我已经在Django设置文件中了。在

^{pr2}$

我可以用Django连接吗?我不想将这些数据写入另一个属性文件来维护两个文件。在

我问这个基本上是因为我不想硬编码凭证。在

编辑:

我意识到我可以用一些东西,比如:

'url':          'mysql+mysqldb://' +  settings.DATABASES['default']['USER'] + ':' + 
    settings.DATABASES['default']['PASSWORD'] + '@' +
    settings.DATABASES['default']['HOST'] + '/' +
    settings.DATABASES['default']['NAME']

现在,如果我的密码是加密的,APScheduler会识别它吗?在


Tags: 文件djangofromimport数据库default编码settings
1条回答
网友
1楼 · 发布于 2024-10-02 22:25:32

您可能已经解决了这个问题,但是有一个第三方帮助程序,用于将APScheduler与Django集成,称为“Django_APScheduler”,如docs中所述。在

它可以使用PIP从PyPi安装,您可以找到docs on GitHub,尽管它们有点模糊。在

相关问题 更多 >