1

有没有办法通过代码而不是使用管理界面来创建 web2py 应用程序?

不确定管理模块中的 app_create() 是否是我正在寻找的。

app_create(appname)

4

1 回答 1

3

可以使用该gluon.admin模块以编程方式访问大多数管理应用程序功能。中的app_create函数gluon.admin用于创建一个新的应用程序。但是,它需要一个 web2pyRequest对象作为第二个参数,以识别 web2py 应用程序文件夹(它将在其中创建应用程序)——因此必须在Request存在对象的环境中调用该函数(即,在 web2py 应用程序或shell),或者您必须传入一个Request将“文件夹”属性设置为 web2py 应用程序路径的模拟对象(任何 web2py 应用程序路径都可以,即使它不存在)。

从应用程序或 web2py shell(包括通过 web2py shell 运行的脚本):

from gluon.admin import app_create
app_create('myapp', request)

从不包含Request对象的环境中:

import os
from gluon.admin import app_create
from gluon.globals import Request
request = Request()
request.folder = os.path.join('path', 'to', 'web2py', 'applications', 'welcome')
app_create('myapp', request)
于 2013-06-03T11:38:41.443 回答