提问者:小点点

Symfony表单和实体数据,提交表单后实体中会显示额外属性


我正在使用Symfony3。

我有一个窗体,SiteType绑定到实体站点。我使用原则注释来验证表单数据。错误显示在表单中,但字段sitemap_url的错误永远不会消失(请参见http://imgur.com/a/RRSJt截图)。

调试后,我发现无论我在sitemap\u url中键入什么,它都会显示为站点实体的额外属性(请参阅屏幕截图)http://imgur.com/a/RRSJt)

奇怪的是表单元素exclude\u regex\u rule被正确映射到实体属性excludeRegexRule。我希望表单字段sitemap\u url映射到实体属性sitemapUrl也会有同样的结果。

处理请求的代码片段SiteController.php

我的配置。yml有以下ORM条目。

# Doctrine Configuration
doctrine:
    dbal:
        ...
        ...
    orm:
        auto_generate_proxy_classes: "%kernel.debug%"
        naming_strategy: doctrine.orm.naming_strategy.underscore
        auto_mapping: true

我试图理解可能出了什么问题。

如果您需要任何其他信息,请告诉我。

谢谢


共1个答案

匿名用户

在Symfony Form Builder中,add方法中的子元素必须与实体var相对应。

在您的站点中,类型应为:

->add('sitemapUrl', TextType::class...