TYPO3 Specific URL 成功发送表单
TYPO3 Specific URL for successfully sent form
使用 TYPO3 10 LTS,我在 https://example.com/contacts
有联系表
我使用具有相同 url https://example.com/contacts 和一些查询字符串的“确认完成器”和 post.
我需要另一个特定的 URL 用于表单成功提交的时间,所以我使用了这个路由增强器:
routeEnhancers:
ContactForm:
type: Extbase
extension: Form
plugin: Formframework
routes:
- routePath: '/submit'
_controller: 'FormFrontend::perform'
defaultController: 'FormFrontend::perform'
现在提交的表单的 URL 是:https://example.com/contacts/submit
问题是即使表单有错误(例如:验证码错误)也会出现此 URL,所以它还没有真正完成。
有没有办法让特定的URL只有在表单提交成功后才出现?
您可以在表单定义中使用 Redirect
finisher。
这只会在成功提交后触发,最后你会得到一个不同的URL。
作为奖励,您还可以通过这种方式重新加载来防止 re-submit。
使用 TYPO3 10 LTS,我在 https://example.com/contacts
有联系表我使用具有相同 url https://example.com/contacts 和一些查询字符串的“确认完成器”和 post.
我需要另一个特定的 URL 用于表单成功提交的时间,所以我使用了这个路由增强器:
routeEnhancers:
ContactForm:
type: Extbase
extension: Form
plugin: Formframework
routes:
- routePath: '/submit'
_controller: 'FormFrontend::perform'
defaultController: 'FormFrontend::perform'
现在提交的表单的 URL 是:https://example.com/contacts/submit
问题是即使表单有错误(例如:验证码错误)也会出现此 URL,所以它还没有真正完成。
有没有办法让特定的URL只有在表单提交成功后才出现?
您可以在表单定义中使用 Redirect
finisher。
这只会在成功提交后触发,最后你会得到一个不同的URL。
作为奖励,您还可以通过这种方式重新加载来防止 re-submit。