【问题标题】:Mojolicious can't find my controllerMojolicious 找不到我的控制器
【发布时间】:2016-03-14 07:47:42
【问题描述】:

我正在尝试让托管在 github 上的项目运行。

从我正在运行的根目录

/LS30$ morbo bin/网络服务器

启动服务器。导航到http://ip:port/settings 我收到以下错误

[Fri Jan 15 15:27:20 2016] [debug] Controller "LS30::Web::Settings" does not exist.

现在控制器位于此处:LS30::Web::Controller::Settings 所以它看错了地方。

既然它在错误的地方寻找,我想为什么不复制它正在寻找的设置控制器(和基本控制器) - 但这只会给我这个错误:

[Fri Jan 15 15:31:45 2016] [debug] Class "LS30::Web::Settings" is not a controller.

routes 对初学者来说是正确的,所以我认为不是这样。事实上,我怀疑这可能是我的环境有问题,因为我知道这对原作者有用。

我对此很陌生,所以我不确定下一步该做什么:/

【问题讨论】:

    标签: mojolicious


    【解决方案1】:

    Mojolicious 5.25 版在搜索用于执行路由的类时自动将“Controller”添加到应用中的类名中。

    在这种情况下,应用程序是 LS30::Web,它正在寻找一个名为 Settings 的类。 Mojolicious 5.25 及更高版本测试 LS30::Web::Controller::SettingsLS30::Web::Settings 类,但早期版本仅测试不存在的后者。

    因此,解决方案是将 Mojolicious 升级到 5.25 或更高版本。如果您使用的是 Ubuntu,请升级到 vivid 或更高版本。否则,请使用 CPAN 或 cpanm 等工具从源代码下载并安装最新的 Mojolicious。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-03-16
      • 1970-01-01
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 2017-03-11
      • 1970-01-01
      相关资源
      最近更新 更多