2014-10-31 46 views
1

如何禁用由Sonata Admin捆綁軟件生成的表單上的錯誤工具提示?我寧願在字段下面顯示錯誤而不是工具提示。如何禁用管理表單上的錯誤工具提示

這些錯誤消息由Sonata內聯呈現,但隨後一些JavaScript代碼將它們從DOM中移除並更改爲動態工具提示。

是否有配置選項來禁用此行爲?

+0

你確定你是在督促環境中運行?檢查你的配置 – 2014-10-31 16:58:00

+0

@AndrewAtkinson環境與此無關。這是Sonata Admin軟件包內置的一項功能。 – SiliconMind 2014-10-31 17:47:19

回答

4

您可以添加一個JavaScript代碼覆蓋索納塔管理功能

例如:

var Admin = Admin || {}; 

// disable popover error messages 
Admin.add_pretty_errors = function(){}; 
+3

我不喜歡這個解決方案(它更像是解決方法),但它的工作原理,不得不重寫索納塔的代碼。這是一個很好的臨時解決方案,直到正確的解決方有選擇禁用/啓用'select2',所以這個也應該是可配置的。 – SiliconMind 2015-01-22 18:36:35

0

您是指HTML5驗證工具提示?大多數現代瀏覽器都內置了對某些驗證規則的驗證(例如「必需」)。請閱讀文檔中的HTML5 validation提示。

基本上,在渲染表單時,需要將novalidate屬性添加到表單中。這是從文檔:

{{ form(form, {'attr': {'novalidate': 'novalidate'}}) }} 

您可以適應,以適應您的用例。

+0

我正在談論Sonata Admin捆綁軟件。我不是自己渲染表單。這是Sonata Admin軟件包的一個功能 - 它添加了一個jQuery代碼,可以將錯誤「div」轉換爲工具提示。我正在尋找一個選項來禁用此功能。 – SiliconMind 2014-10-31 18:16:31

+0

@SiliconMind:你可以在你的管理包中覆蓋模板「base_edit_form.html.twig」,並在表單標籤中添加novalidate屬性 – 2015-10-07 15:29:47

1

索納塔管理員現在有這個選項,但它適用於所有形式的一次。

以下是YAML配置相當於禁用HTML5驗證:

sonata_admin: 
    options: 
     html5_validate: false 
+1

另請參閱:https://sonata-project.org/bundles/admin/master/doc/reference/configuration.html – 2017-02-10 13:32:55

相關問題