Database design 在Symfony自动生成管理中编辑主键

Database design 在Symfony自动生成管理中编辑主键,database-design,symfony1,doctrine,symfony-forms,Database Design,Symfony1,Doctrine,Symfony Forms,我需要在几个表中编辑主键 默认情况下,symfony在新建/编辑表单中隐藏主键 例如,无法编辑只有字段“tag”为PK的表“Tags”。 将整数ID添加到此表并不完全是好的db设计 提前感谢您的帮助。正如您所说,“默认”symfony会隐藏主键 因此,您需要修改generator.yml以包含所需的特定字段,并可能强制字段的类型为“text”,以便它们不会呈现为“plain” 如果这不起作用,则始终可以扩展generator.yml以包含这些主键字段的伪字段 顺便说一句,整数自动递增主键非常有用

我需要在几个表中编辑主键

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

例如,无法编辑只有字段“tag”为PK的表“Tags”。
将整数ID添加到此表并不完全是好的db设计

提前感谢您的帮助。

正如您所说,“默认”symfony会隐藏主键

因此,您需要修改generator.yml以包含所需的特定字段,并可能强制字段的类型为“text”,以便它们不会呈现为“plain”

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


顺便说一句,整数自动递增主键非常有用,而且对您不利:)

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

我知道这个解决方案,并且一直在使用它。正确地进行数据库设计,这并不总是一种最好的方法。它只是与使用代码aáYouTube相同。使用代码意味着ID不会向用户公开。即使我在form类中打开了主键,symfony也依赖主键作为编辑锚。在我看来,没有简单的方法来实现这一点。不,在设计大型数据库时,拥有两个独立的唯一字段并不总是一个好主意。“向该表添加整数ID并不完全是一个好的数据库设计。”-考虑到您现在面临编辑主键值的难题(并且必须在引用该值的任何记录中级联这些更新),我认为情况可能恰恰相反。