2013-05-27 103 views
2

我實際使用中的Prestashop 1.5,讓我來顯示錯誤信息到前端Tools class成功的消息

$this->errors[] = Tools::displayError('Fatal error!'); 

有什麼功能,顯示成功消息同樣的方式? 看來我們不能在擴展中使用l()函數ModuleFrontController()

任何意見將不勝感激。

回答

0

找到一個解決方案,但它可能不是最好的:

裏面我ModuleFrontController()類:

$this->context->smarty->assign('success', 'Success!'); 

在我模塊的模板文件的頂部:

{if isset($success)} 
    <p class="success">{$success}</p> 
{/if} 

它顯示「成功!」如所預期的那樣。

+0

我沒有注意到,到現在爲止,但downvoting這個時候的答案通常是相同已經upvoted是愚蠢的人。 – roastedtoast

+0

您可以解開它x'D –

3

您顯示類似下面的錯誤/成功信息的方式:

{if isset($success)} 
    <p class="success">{$success}</p> 
{/if} 

是不錯的選擇。請注意,

Tools::displayError('Fatal error'); 

不提供任何形式的錯誤消息的樣式,它只是提供了一種方法來在管理員轉換錯誤。

如果你希望你成功的消息應該是翻譯也然後在你的控制器做如下:

$this->context->smarty->assign('success', 1); 

,然後在模板文件

{if isset($success)} 

    {l s='This is success message'} 

{/if} 

如果模板文件是在模塊然後使用它作爲

{if isset($success)} 

    {l s='This is success message' mod='yourmodulename'} 

{/if} 

希望這會幫助你。

謝謝

0

對於成功消息你可以使用:

$output = null; 
$output .= $this->displayConfirmation('<message goes here!>'); 

對於錯誤信息你可以使用:

$output = null; 
$output .= $this->displayError('<message goes here!>'); 

的中底:

return $output; 

或類似的東西:

return $output.$this->displayForm(); 
+0

問題不在於顯示消息或錯誤,而是如何正確地將其分配給模板文件。 – roastedtoast