Yii2访问新控制器中的操作

时间:2015-10-21 10:57:45

标签: yii2 yii-url-manager yii2-basic-app

同志们,我在实施yii2基础方面遇到了问题,但我还没有放弃。我已经成功安装了yii2,激活了漂亮的URL并在根文件夹中创建了.htaccess文件。主页,关于,联系和登录网址很好。

我。我用CRUD创建了一个新模型InstTypes。为什么http://localhost:8081/we@ss/instTypes/create返回Not Found(#404)?

II。我还创建了一个模块instClients。我可以访问DefaultControler中的索引操作。我在这个模块下有一个带有CRUD的模型。为什么http://localhost:8081/we@ss/instClients/insts/create返回Not Found(#404)?

我倾向于认为这可能是由于从配置中删除了导入和自动加载。

有人可以证明他们是如何创建新模型和CRUD并成功访问其行为的吗?

提前致谢

3 个答案:

答案 0 :(得分:0)

  

我用CRUD创建了一个新模型InstTypes。为什么   http://localhost:8081/we@ss/instTypes/create返回未找到(#404)?

您无法直接访问模型,与模型交互的唯一方法是通过控制器实现与模型和视图的实体交互。通过初始化模型$ model = new YourModelNmae();或者通过渲染视图。

从您的网址

  

http://localhost:8081/we@ss/instTypes/create

InstType应该是您的控制器,而create是InstType

下的操作

使用Yii2 Gii工具生成CRUD,请执行以下操作: -

  1. 生成您的模型
  2. 生成您的CRUD
  3. 转到

      

    http://localhost:8081/we@ss/yourController/YourActionOnYourController

    有关详细信息https://www.youtube.com/watch?v=6B52-li6IgU

    ,请参阅此YouTube链接

    快乐编码:)

答案 1 :(得分:0)

只是为了添加其他答案,您的网址无效,因为它是camelCase。你需要使它连字符,所以

http://localhost:8081/we@ss/instTypes/create

将成为

http://localhost:8081/we@ss/inst-types/create

你得到404是因为你试图访问instTypes,它应该是inst-types。

答案 2 :(得分:-1)

this解决了我的问题。我需要将控制器添加到控制器映射中。