我尝试将自定义页面添加到用户模型。
如果我要制作简单的页面,我只需在application\classes\controller
中创建控制器,在\application\views
中创建一个视图文件,但现在我想对用户模块做同样的事情。
我在modules \ user \ views \ user中找到了视图文件,但我无法找到控制器或其他任何正在加载它们的内容。
我试图简单地创建一个名为test.php的新文件,然后导航到localhost/user/test
,但收到错误:
在此服务器上找不到请求的URL用户/测试。
如果我尝试localhost / user / profile,一切正常。我在这里做错了什么?
答案 0 :(得分:1)
如果localhost/user/profile
适合您,则该用户模块中应该有一个名为action_profile()
的函数。
对“action_profile”进行全局搜索,您应该能够找到为该URL提供服务的控制器文件。然后,您可以为要添加的新页面添加其他操作。
或者,如果您特别需要新控制器,则可以将控制器添加到同一目录。
无论哪种方式,如果它不起作用,您可能需要修改路由(在引导程序或模块的init.php文件中)。
答案 1 :(得分:0)
帮自己一个忙,然后阅读Cascading File System。基本上任何使用Kohana :: find_file() - Kohana核心经常使用的东西 - 都应该在模块中找到你要找的文件。
由于您的网络服务器试图为您提供webroot / user / test,但它无法将其转发给Kohana。然后Kohana将尝试将“用户/测试”与路线匹配。在你的情况下它可以,因为没有得到'无法找到匹配URI:user / test'的路由例外。 Kohana没有配备控制器来处理你想要的东西。
如果我理解正确,有些模块可以满足您的需求。最有可能的是,他们会在名字中加上'assast'的'媒体',例如this one。