2010-05-16 65 views
-1

我需要编辑几个表中的主键。编辑Symfony自动生成的管理主键

默认情况下,symfony隐藏New/Edit表单中的主键。

例如,不能仅使用PK字段'tag'来编辑'标签'表。 向此表中添加整数ID并不是完全不错的db设计。

在此先感谢您的帮助。

+0

”将整数ID添加到此表中并不完全是很好的db设计。“ - 鉴于您现在正面临着编辑主键值的难题(并且不得不跨越引用该值的任何记录级联这些更新),我认为也许情况恰恰相反。 – 2012-01-17 22:17:53

回答

0

正如@Raise指出,简单的解决方案是创建一个可更新的“ID”字段与主要关键领域一起工作,您可以独自离开。 “

+0

我知道这个解决方案,我一直在使用它。 做数据库设计的权利,这并不总是最好的办法。 – olegsv 2010-05-20 10:34:36

+1

这只和使用YouTube上的代码相同。使用代码意味着ID不会暴露给用户。 – 2010-05-27 11:33:59

1

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

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

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

顺便说一句,整数自动递增主键是非常有用的,而且the general feeling是对你的:)

+0

即使我在表单类中打开主键,symfony依赖主键作为编辑锚点。在我看来,没有简单的方法来实现它。 不,在设计大型数据库时,拥有两个独立的唯一字段并不总是一个好主意。 – olegsv 2010-05-20 10:37:15