我在数据库中有一个 slug 字段,它是从包含以下内容的名称创建的&
:
name: Hansel & Gretel
slug: hansel-&-gretel
Doctrine 从名称中删除了对 url 不友好的字符。嗯,&
绝对是 url 友好的。
现在,当我使用 symfony 生成一个指向童话故事的链接时,link_to()
我得到:
http://myfairytalesite.ft/tale/hansel-%26amp%3B-gretel
因此,在&
获取 url 编码之前,它会更改为 HTML 实体。
当我导航到此 URL 时,我收到 404 错误,因为 slug 仅经过 url 解码,并且路由 (sfDoctrineRoute) 尝试使用 slug 查找hansel-&-gretel
数据库中显然不存在的对象。
我的问题:我能做些什么呢?
该名称是从外部源导入的,因此我无法手动更改它。
我想html_entities_decode
在使用蛞蝓的动作中添加一个,但感觉就像用胶带将机翼连接到飞机上......
我什至试图深入研究 Symfony 的内部结构,看看我可以在那里改变什么,我深入到害怕我会唤醒 Balrog 但找不到任何有趣的东西。:/
有没有人遇到过类似的问题?它可能是 Sf 或 Doctrine 错误吗?