我正在尝试了解URL Mapping的工作原理。我已经浏览了很多页面,但我似乎无法绕过我想要做的事情。
它非常简单,我使用DataObjects作为页面方法,并且我有一个成员扩展名写入成员类。我有典型的操作,显示,编辑,添加。
因此,如果我访问www.mywebsite.com/members/show/1,我可以看到第一个用户。如果我更改show to edit,我可以编辑第一个用户。现在,如果我访问www.mywebsite.com/members/add,我可以创建一个新用户。由于我在add方法中创建的功能,这一切都按预期工作。
我的问题在于,当你去任何网站时,你没有通过转到会员/添加到网站注册,你通过访问website.com/Register或类似的东西注册。从代码管理的角度来看,将代码保留为现在的样式要容易得多。我不想创建一个Register页面并将代码移到那里,而是试图找出是否可以访问www.mywebsite.com/Register然后加载www.mywebsite.com/members /加。我不是在谈论会更新网址的重定向链接,我希望用户仍然可以在网址中看到注册,而不是看到/ members / add。
反之亦然,如果用户要访问www.mywebsite.com/members/add,我希望链接更新为注册或说找不到页面。
这是否可以使用Silverstripe Framework?
我不是百分百肯定,但我相信这称为URL Masking。
答案 0 :(得分:1)
这是非常可能的,首先我建议你看看......
...因为即使你没有'想要使用现有的模块,我确信会有有用的信息。有一个很好的例子" pure"路由(即silverstripe no cms)导致"嵌套"路线 - 这是我认为你要求的,所以我强烈建议你阅读下面的幻灯片然后创建的待办事项应用