Routing Symfony路由;用户生成内容中的内部URI
我正在从事一个Symfony(1.4)项目,该项目要求用户能够在用户生成的内容体中插入内部URI,在TinyMCE/WMD编辑器中编写(尚未决定!)。用户可以将内部URI添加到网站上的其他位置。内容将以markdown/html的形式存储在数据库中 我可以简单地插入通过Symfony本身检索到的当前URI,但我希望有一种方法来存储相应的模块/action/etc变量,以便在需要更改路由时,整个网站上的URI都保持正确 我唯一能想到的是一个类似PHP Markdown的处理器,它执行文本搜索,在内容块中提取自定义标记,并将其替换为生成路由的Markdown/html代码(使用Symfony的get_url()/link_to()方法)。[这还需要文本标记生成器等]Routing Symfony路由;用户生成内容中的内部URI,routing,symfony1,Routing,Symfony1,我正在从事一个Symfony(1.4)项目,该项目要求用户能够在用户生成的内容体中插入内部URI,在TinyMCE/WMD编辑器中编写(尚未决定!)。用户可以将内部URI添加到网站上的其他位置。内容将以markdown/html的形式存储在数据库中 我可以简单地插入通过Symfony本身检索到的当前URI,但我希望有一种方法来存储相应的模块/action/etc变量,以便在需要更改路由时,整个网站上的URI都保持正确 我唯一能想到的是一个类似PHP Markdown的处理器,它执行文本搜索,在内
Symfony还有其他/更好的方法吗?我可以从用户生成的输入中访问Symfony helpers/etc吗?只需告诉用户他们需要使用命名路由
@my\u custom\u url
,并在Symfony路由文件routing.yml
中定义它们没有简单的方法可以做到这一点。最好的方法可能是:
- 在提交时解析编辑器输入以查找所有URL
- 用存储路由名称和参数的自定义语法替换URL
- 每当检索/显示信息时,请删除自定义语法并将其替换为生成的路由(例如,通过preg_replace回调)
任何一种路由都可能会带来一些麻烦。名称路由是否仍需要通过Symfony方法处理?我认为下面的方法行不通;是的,不知怎的,我认为你正在解析它们,你只是不想让用户输入模块/动作,我也这么想。谢谢你的建议。除非有人很快想出一些魔法,否则就只能这样了!