1

我有

  • 定义视图的附加产品(“my_view”)
  • 使用此插件的应用程序

views.py在应用程序启动期间,配置器会扫描这两个应用程序。

我的应用程序需要有一个更具体的版本my_view,因为插件提供的 genericmy_view不知道应用程序特定的细节。什么是一个好的金字塔模式这样做,这样金字塔配置器就不会发生冲突?我可以注册一个具有相同名称和上下文更具体IRequest或类似的视图吗?

4

1 回答 1

1

如果你想覆盖一个视图,如果视图是在插件中定义的,它通常“正常工作”。

config.include('cool_addon')
config.add_view(...)

这是有效的,因为 Pyramid 将看到您的视图更接近应用程序的顶层,并且比 cool_addon 中定义的视图具有更高的优先级。如果由于某种原因无法实现这样的结构,蛮力方法是config.commit()旧配置,然后添加您的视图,此时它将覆盖旧配置。

于 2016-10-18T15:57:22.360 回答