如何在Pyramid 1.4中创建自己的命令

2 投票
1 回答
818 浏览
提问于 2025-04-17 18:54

好的,在1.4版本发布之前,我们有一个叫paster的工具,可以让我们添加自己的命令,比如清除缓存或加载数据库初始数据。现在,根据我的理解,pyramid使用的是控制台脚本,但关于这个新功能的文档很少,讲得不够清楚。

我想加载初始的数据库数据。在以前的方式中,我会为paster写一个单独的命令,并在需要加载数据时注册它,像这样:

paster loaddbdata

那我现在该怎么做呢?

1 个回答

2

Pyramid 提供了 pyramid.paster.bootstrap() 这个功能,方便你创建一个和你应用程序相关的脚本。把一个脚本变成命令并不需要使用 Pyramid 提供的复杂结构,而是可以通过 setuptools 的入口点来实现。这意味着你需要在你的 setup.py 文件里添加一个 [console_scripts] 的部分,然后重新运行开发环境的设置,这样你的脚本就会被安装到 bin 目录里。

setup(
   # ...
   entry_points={
    'paste.app_factory': [
        'main = myapp:main',
    ],
    'console_scripts': [
        'myscript = myapp.scripts.myscript:main',
    ],
)

撰写回答