2014-03-06 74 views
1

首先,讓我們進入應用程序上下文:Laravel 4:重定向不工作

我們對CustomerController,這是一個Resource Controller發送POST請求Store方法。

這是我的存儲方法:

$customerDTO = new \repositories\dtos\CreateCustomerDTO(); 
$customerDTO->hydrate(Input::All()); 

/** @var Customer $customer */ 
$customer = $this->customers->create($customerDTO); 

if ($customer != null){ 
    header('Location: '.url('/customers/'.$customer->clacli)); 
    return Redirect::action('[email protected]', array($customer->id)); 
} 

$userMessage = array(
    'messageType' => 'error', 
    'messageContent' => 'Error creating a new Customer' 
); 

return Redirect::action('[email protected]') 
    ->with(array('userMessage' => $userMessage)); 

我不得不把一個「頭」,因爲重定向呼叫沒有工作。

當我把這個行:

$customer = $this->customers->create($customerDTO); 

所有重定向停止工作。

什麼是$ this-> customers?它只是一個從控制器抽象數據庫的存儲庫,我將需要在不久的將來更改數據庫。

嗯,在$代碼這個 - >客戶 - >創建是:

return Customer::create($dto->toArray()); 

,它的工作,也是我所有的customersRepository的測試都在工作。這只是對具有一組數據的Eloquent Model create方法的調用。

所以我想不通爲什麼重定向不工作。任何提示?

我試着用return'test';剛剛調用$ this-> customers-> create($ customerDTO);並沒有工作。

+1

* *($ customer)*在* $ customer = $ this-> customers-> create($ customerDTO)後顯示的是什麼?*? – marcanuy

+1

使用'Redirect :: action'時,是否需要一個與該控制器相對應的路由?這可能是我沒有使用過的一種重定向類型,所以我不是100%。 – ollieread

+0

對象(客戶)#325(20)...等 –

回答

-1

這是一個奇怪的問題與會議。我們得到它是固定的,不知道爲什麼......