【问题标题】:Edit primary keys in Symfony auto-generated admin在 Symfony 自动生成的管理员中编辑主键
【发布时间】:2010-05-16 14:38:23
【问题描述】:

我需要编辑几个表中的主键。

默认情况下,symfony 在新建/编辑表单中隐藏主键。

例如,不能编辑表“标签”,只有字段“标签”是 PK。 向该表添加整数 ID 并不是很好的数据库设计。

提前感谢您的帮助。

【问题讨论】:

  • "将整数 ID 添加到此表中并不是很好的数据库设计。" - 鉴于您现在面临编辑主键值的难题(并且必须将这些更新级联到引用该值的任何记录),我建议可能恰恰相反。

标签: database-design symfony1 doctrine symfony-forms


【解决方案1】:

正如你所说,“默认”symfony 隐藏了主键。

因此,您需要修改 generator.yml 以包含您需要的特定字段,并可能强制字段的类型为“文本”,这样它们就不会呈现为“普通”。

如果这不起作用,您可以随时扩展 generator.yml 以包含这些主键字段的伪字段。

顺便说一句,整数自增主键非常有用,the general feeling 对你不利 :)

【讨论】:

  • 即使我在表单类中打开主键,symfony 还是依赖主键作为编辑锚。在我看来,没有简单的方法来实现它。不,在设计大型数据库时,拥有两个独立的唯一字段并不总是一个好主意。
【解决方案2】:

正如@Raise 所说,解决此问题的简单方法是创建一个可更新的“ID”字段,与主键字段一起工作,您可以不用管它。

【讨论】:

  • 我知道这个解决方案,我一直在使用它。正确进行数据库设计,这并不总是最好的方法。
  • 这与使用 YouTube 的代码相同。使用代码意味着 ID 不会暴露给用户。
猜你喜欢
  • 2011-09-01
  • 2011-03-04
  • 1970-01-01
  • 1970-01-01
  • 2011-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多