【问题标题】:Complete name instead of database record value完整名称而不是数据库记录值
【发布时间】:2013-07-04 02:48:12
【问题描述】:

我有一个存储ENUM 值的数据库列,在这种情况下我有ai,这意味着activeinactive。如何在管理生成器模块中显示Active / Inactive 而不是a / i?有什么帮助吗?

编辑:在索引中显示活动或非活动 我现在拥有的如下:

ID    Name   Active   Actions
1     Val1   a        Edit | Delete  
2     Val2   a        Edit | Delete
3     Val3   i        Edit | Delete

我想要实现的是:

ID    Name   Active   Actions
1     Val1   Active   Edit | Delete  
2     Val2   Active   Edit | Delete
3     Val3   Inactive Edit | Delete

或者只是写一个image_tag() 取决于值类似于checked.png 当值是aunchecked.png 当值是i

【问题讨论】:

  • 多展示一下你所拥有的以及到目前为止你已经尝试过的东西
  • @ChristianGärtner 我什么都没做,因为不知道怎么做,我正在检查文档here,但仍然不知道如何完成这项工作

标签: symfony1 symfony-1.4 admin-generator


【解决方案1】:

您想要更改的位置和内容非常模糊,但这里是:

在索引页面中,只需使用部分覆盖通过 generator.yml 显示的值。 See symfony doc

否则,在表单页面中,创建另一个表单,编辑 sfWidgetFormChoice 以获得想要的标签。然后通过 generator.yml 更新模块中使用的表单类。 See symfony doc

【讨论】:

  • 我知道如何通过覆盖默认小部件来实现表单,但仍然不知道如何在视图级别完成此操作,这意味着当我执行 index() 函数时。我阅读了文档,但没有找到任何帮助。看看我的版本,也许这能澄清我正在寻找的东西
  • symfony doc 所述,仅渲染部分内容。为此,请在您的模板文件夹中创建部分 active。然后,在您的 generator.yml 中,在 _list 中,在 display 中,添加字段 _active
  • 好的,我现在明白了如何使用部分来处理这部分,但我的问题是:如果列存储ai,我应该在哪里编写代码以获取Active 的@987654328 @ 和 Inactive 代表 i 以及我如何部分显示它们?
  • 完全取决于您。它应该在一个辅助函数中,因为它对我来说纯粹是格式化,但我想将它存储在你的模型类中会很方便,因为你可以轻松地重用它。
  • 你能给我留下一些代码供审查吗?只是一个例子?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-23
  • 2020-02-17
  • 2020-08-12
  • 2021-03-17
  • 2021-06-08
  • 2010-11-12
相关资源
最近更新 更多