【问题标题】:Symfony rename parameters in ugly GET urlSymfony 在丑陋的 GET url 中重命名参数
【发布时间】:2017-09-11 07:50:14
【问题描述】:

提交 GET 表单后,应用程序运行良好,但我的 URL 很丑:

http//mywebsite.local/page/240?appbundle_options%5Bstart%5D=25%2F09%2F2017&appbundle_options%5Bend%5D=30%2F09%2F2017&appbundle_options%5B_token%5D=_c2ZjonEHI3_1vLNcyp3xKRzcehqz02lguHgfx6Lzv8

我想知道是否可以将其“清理”到(示例)中

http//mywebsite.local/page/240?start=15-08-2017&end=22-12-2018&token=abcdefgh123456789

这可能是一个简单的梦想,但如果有一个干净和明智的方法,我想知道,谢谢

【问题讨论】:

  • 这是可能的,您不应该在 SO 上问“是否可能”之类的问题。
  • 你尝试了什么,有什么问题?
  • 那么,如果我不问任何地方,我怎么能找到它是否可能呢?
  • Meta 上可能有一个关于找出某事是否可能的问题和答案。如果有,令人惊讶的是,没有这样的问题 - 问自己。
  • 现在关于您手头的任务。它包括更改重定向代码以使其发送较短的参数并更改接收代码以使其接受这些较短的参数。现在任务应该是微不足道的,不是吗?如果不是,请使用代码和实际问题的描述更新问题。

标签: php symfony url get clean-urls


【解决方案1】:

您可以将表单操作设为 POST。

或者查看 symfony 路由文档。

通过路由,您的网址可以如下所示:

website.com/number/1/name/test

但使用 get 表单可能会变得很长。

【讨论】:

  • 事实上,这是一个 POST 发送的表单,我被要求在 GET 中进行修改,但这些 URL 让我个人感到厌恶。我认为这些东西现在会保持这种状态...... ^^
  • 您总是可以尝试将表单值存储在会话变量中并重定向到另一个页面,这样 url 就不会像屏幕上那样保持不变。或者只是对表单值做你必须做的事情并重定向到成功页面。
  • 现在我设法清除了 URL,有点像“公共函数 getBlockPrefix() 返回 null;”在我的表单类型中
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-03
  • 2019-10-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多