视:宁静的路由与嵌套的网址,当实体是不是真的嵌套
-
11-09-2019 - |
题
I'm真的有困难时期,与宁静的模式+嵌套的网址。我已经问了一个问题,引导我找到我在哪里,现在 在这里,.我域大致是这样的:有学校,课程的学校和教师的学校。现在学校、课程和教师不是"嵌套的"实体在这个意义上,可以参照它们中的任何一个标识。该网站是一个集合的"微型站点",为每所学校展示每一个人的课程和教师。课程或教师可能只存在一个学校。
说我们有一个网址像/学校/1/课程/10中。然10的学校1.这一工作正常。说用户的变化,通过手10到11个,其存在,但是一个课程的学校2.现在导致混乱,我的网站仍然是"认为"用户是在学校,1但表示3课程作为它的一部分。
我应该做的详细行动的参数,两者的Id被要求为和"父母"的实体(学校在这种情况下),它所涉及的?提取的储存库,不仅通过id但是有一个学校约束?
或是有没有更好的方式来做到这个吗?
解决方案
我将考虑它是这样;尽管可能有一个课程,11在你的服务,没有资源存在的URI/学校/1/课程/11.由于没有资源,在这URI,我将返回HTTP404响应要求为URI。
一个办法可能提高你的服务将更换整数ID值的姓名的实体(这将需要的名字是唯一的).这会让你Uri更多的用户友好。一个例子是/学校/霍格沃茨魔法学校/课程/药剂。
为进一步改善服务,只想给用户的方式浏览服务的所有不同的资源可用。例如你可能会想要允许他们得到一个列表中的所有课程提供的某些学校。要做到这一点,你会让一个资源处/学校/霍格沃茨魔法学校/课程/其返回的类型将是一个列表中的所有课程的学校。在表示这种清单可能是一种XML文件如下段:
<courses>
<course uri="/schools/hogwarts/courses/defense+against+the+dark+arts">Defense against the dark arts</course>
<course uri="/schools/hogwarts/courses/potions">Potions</course>
</courses>
其他提示
我应该使细节的动作 参数到两个标识被要求 对于与“父”实体( 在这种情况下,学校),它参与? 从不仅ID仓库取 但具有学校约束?
是
Or is there any better way to do this?
没有错上述你。
您可以用一个包罗万象的路线去做,然后自己解析URL元素。