1

拥有控制器设置的application/controllers/admin/images/位置public function get_upload($id=null)restful = true

我如何从我的新闻控制器调用上面的函数。我尝试以下方法,但我得到 404,但它的功能本身可以工作......通过一个简单的$.post()作品调用(显然有完整的路线)

$image = Controller::call('admin.images@upload', array($news_id));

有什么想法我应该怎么做?

更新

即使使用 HVMC,我仍然可以404执行HMVC::get('admin.images@upload', array('news_id'=>$news_id)

应用程序/控制器/管理员/images.php

class Admin_Images_Controller extends Admin_Controller
{
     public $restful = true;
     public function get_upload($news_id)
     {

PSAdmin_Controller存在且已加载,与此无关

4

2 回答 2

1

您正在寻找的是Lavarel 不支持开箱即用的HMVC 。如果我得到任何信息错误,我不使用 Lavarel 非常抱歉,但是快速搜索会将我定向到此处,他们建议在其中使用此捆绑包

经过进一步检查,您似乎可以使用Route::forward()

在大多数情况下,您可以使用 Route::forward() 来实现您想要做的事情。

希望能帮助到你 :)

于 2013-01-10T11:01:44.580 回答
1

我遇到了同样的问题。问题是,如果 http 类型(post、get、put、delete)不同,它将返回 404。

例如,假设您有 2 个控制器、图像和媒体。如果您POST_UPLOAD在图像控制器中调用了一个函数,而GET_RESIZE在媒体控制器中调用了另一个函数,则调用GET_RESIZEfromPOST_UPLOAD将返回 404,反之亦然

但如果GET_RESIZEPOST_RESIZE错误就不会发生,即相同的http 类型。

这意味着http类型必须相同。

这很糟糕,因为您需要维护RESIZEie GET_RESIZE&的 2 个功能POST_RESIZE

这是 Laravel 中没有记录的东西。

于 2013-05-07T21:14:24.213 回答