我正在尝试构建一个迷你 cms,其中所有 url 都转到“产品”控制器的索引操作。
products_controller 检查 url 并将其视为参数,因此 '/widgets' 将命中 index($url) 函数并将 'widgets' 传递给 $url 参数。
然后我进行这样的查找,检查一个名为 url 的字段:
$product= $this->Product->find('first', array('conditions' => array('Product.url LIKE' => $url)));
然后我将这个 $product 吐到我的视野中。这种方法意味着我可以在我的数据库中添加产品,并指定产品的 url,而无需向路由添加东西。我还有一个导航栏,它简单地由数据库中的所有 url 组成,使用 find all。
我的问题是我的路由和我的管理员。因为我将所有 url 路由到 products_controller 的 index() ,所以它不会导致我的管理部分出现问题。因此,我将我的管理员放在一个单独的控制器中,并手动将 URL 连接到操作(索引、视图、编辑、添加、删除)。问题是我的管理部分不起作用,因为 url 路由不正确,并且它破坏了管理路由。
任何人都可以看到这样的“包罗万象”路线的方法,而且我的管理员路由也可以正常工作。
希望我已经解释得足够清楚了,如果没有,请大喊大叫,因为我想弄清楚这一点。