PHTMLで使用されるVARSの初期化と更新。正しい方法は何ですか?
-
12-12-2019 - |
質問
引用符を実装しています。その後、フォームを含むPHTMLテンプレート、計算された価格表示とJavaScript / Ajaxスクリプトを定義したモジュールを宣言しました。
私はブロックを定義しました:
<?php
class Mine_Quotemodule_Block_Quoteformblock extends Mage_Core_Block_Template
{
public function methodblock()
{
return 'informations de mon block !!';
}
}
?>
.
とコントローラ
<?php
class Mine_Quotemodule_IndexController extends Mage_Core_Controller_Front_Action
{
public function indexAction()
{
$this->loadLayout();
$this->renderLayout();
}
public function quoteAction()
{
echo 'test mamethode';
}
}
?>
.
見積価格を表示して更新できるようにするには、いくつかのVARを使用する必要があります。
Indext()(デフォルト値表示用)(デフォルト値表示用)でそれらを宣言し、初期化し、私のフォームスクリプトによって呼び出されるQuorction()でそれらを更新しました。
これは良い方法ですか?
IndexActionで宣言されている場合は、QuoteAction()およびPHTMLの範囲内で参照する方法?
あなたの助けをありがとう、
アレックス
解決
グローバル変数はMage::register('variable', $variable)
を使用して設定されます。この変数は、$_variable = Mage::registry('variable)
を使用して任意の場所から呼び出すことができます。
セッション変数が必要な場合は、次のようにします。
Mage::getSingleton('core/session')->setMyVariable('value of variable');
.
この変数は後で:
$variable = Mage::getSingleton('core/session')->getMyVariable();
.
私は理想的にはセッションとグローバル変数がコントローラに設定されていると言うでしょう。その後、それらをどこでも呼び出すことができます。
使用される変数はビュー(.phtml)であるため、最良のことはブロック内に設定することです。その後、$ this-> getVariable()を使用して呼び出すことができます。
private $_variable;
public function getVariable(){
return $_variable
}
public function setVariable(){
...logic...
}
. 所属していません magento.stackexchange