【问题标题】:Plone/Zope style view overrides in PyramidPyramid 中的 Plone/Zope 样式视图覆盖
【发布时间】:2016-09-11 16:49:50
【问题描述】:

我有

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

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

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

【问题讨论】:

    标签: pyramid zope zope.component


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多