【问题标题】:How to divide a list into more lists in a generated admin backend?如何在生成的管理后端将列表划分为更多列表?
【发布时间】:2012-01-27 23:14:54
【问题描述】:

我是 symfony 的新手。我正在使用 symfony 1.4,并且我已经为我的项目设置了后端以保存一些文章。

但是,在我的文章编辑视图中,我有一个列表,与文章过滤器具有多对多关系。我在过滤器表中有一个枚举,为过滤器提供 3 种类型。 (只有 3 个,所以我没有创建 3 个 Filters 表)

这是我的学说架构,你可以想象一下。

    detect_relations: true
      Article:
        columns:
          article_no:          { type: string(50), notnull: true }
          producer:            { type: string(100) }
          name:                { type: string(255), notnull: true }
          description:         { type: string(2000) }
        attributes:
          export: all
          validate: true

    Filter:
      columns:
        name:  { type: string(255) }
        type:  { type: enum, values: ['Type1', 'Type2', 'Type3']}
      relations:
        Article:
          foreignAlias: Filters
          class: Article
          refClass: FilterArticle

    FilterArticle:
      columns:
        filter_id: { type: integer, primary: true }
        article_id: { type: integer, primary: true }
      relations:
        Filter: { foreignAlias: FilterArticle }
        Article: { foreignAlias: FilterArticle }

所以在我的编辑视图中,我有一个包含过滤器的大列表。 但是我想把这个列表分成这3种不同的类型,显示3个列表。

这可能吗?我怎么能意识到这一点?我想我需要覆盖 ArticleForm 或 FilterForm ?!或者我可以只配置生成器吗?

谢谢大家的帮助,我只能说我爱 symfony :)

问候

【问题讨论】:

  • 寻找类似的:我想按状态字段将页面分为两个。待处理文章需要单独列出,活动文章需要单独列出。

标签: list symfony1 doctrine


【解决方案1】:

从我在这里看到的是,您想要更改列表视图的呈现方式。 我假设您已经创建了管理员自动生成的模块。

如果您转到适合您环境的缓存目录并转到模板,您应该找到一个_list.php 文件,该部分包含表格显示html/php,您应该看到遍历结果的逻辑,例如:

foreach ($pager->getResults()... 

将此_list.php 复制到您自动生成的模块的模板目录中。 在这里,您可以自定义编辑此文件以覆盖列表视图的呈现方式并添加额外的逻辑来区分您的 3 个列表的呈现方式...

【讨论】:

    猜你喜欢
    • 2021-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多