我有三个应用程序,但我希望它们都使用相同的layout.html和css。有没有办法实现这一点?
编辑:
我将静态文件夹和layout.html等放在了web2py根目录下的/common/中。
以下是我在模型中所做的内容:
然后在视图中:
像普通应用程序一样操作即可。
编辑:
我将静态文件夹和layout.html等放在了web2py根目录下的/common/中。
以下是我在模型中所做的内容:
import os
global web2py_path
web2py_path = os.environ.get('web2py_path', os.getcwd())
session.layout_path = web2py_path + '/common/layout.html'
print 'session.layout_path = ' + session.layout_path
然后在视图中:
{{extend session.layout_path}}
编辑 2:
关于下面评论提到的编译问题,我决定把'common'文件夹放在'/applications/'中,并像常规应用程序一样将静态文件夹(css、images)放在'common'文件夹内。然后我把layout.html放在'common'的根目录下。接着在另一个应用程序的视图中,我使用了:
{{extend '../../common/layout.html'}}
该页面引用了common应用程序中的layout.html。然后,该layout.html文件使用以下方式引用“common”文件夹中的静态文件:
{{=URL('common','static','css','style.css')}}
像普通应用程序一样操作即可。