バージョン選択

フォーラム

メニュー

オンライン状況

138 人のユーザが現在オンラインです。 (122 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 138
もっと...

サイト内検索

その他 > その他 > 【告知】EC-CUBE 2.0.1正式版をリリース致しました。

その他

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
pineray
投稿日時: 2007/12/5 16:41
対応状況: −−−
長老
登録日: 2006/9/9
居住地: 伊賀
投稿: 292
Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。
ご返答いただき誠にありがとうございます。
全く貢献していないのに文句ばかり言って申し訳ありません

引用:
nanasessさんは書きました:

以下のようなイメージでしょうか?


function process() {
    // logic.
    $this->variable = "variable";
    $this->foo();
}

function display() {
    $objView = new SC_SiteView();
    $objView->assignobj($this);
    $objView->display(SITE_FRAME);
}

はい、イメージとしては上記のような感じです。

引用:
上記のようにすると, process() 関数の途中で SC_SiteView のインスタンスに何らかの処理をしたい場合, 少々不便に感じます.
また, ほとんどの Page クラスで, 表示処理は上記の3行ほどなので, 邪魔になることはあまり無いのではないでしょうか.
class_extends 以下のクラスを使用してカスタマイズした場合, 冗長なコーディングとなりますが, さほど問題無いと思われます.

「邪魔になる」という表現が悪かったですね
例えば商品のデータを取得した後で表示するというprocess() 関数があった場合に、データの取得と表示の間に割り込ませたい処理があるとします。
現状では、親クラスの関数を使わずに、まるまるコピーした後で割り込ませたい処理を追加するだけの冗長なコーディングをせざるを得ません。
だとすると、今回のアーキテクチャ変更の恩恵が減少してしまうように感じるわけです。

引用:
# それよりも, 各 process() 関数をリファクタリングすべきかと...

それは確かに...

引用:
「こうしたらどうか」というコーディングの具体例がありましたら, ご提示頂ければ幸いです.
よろしくお願い致します.

LC_Page_Index_EX.phpで試してみました。
    function init() {
        parent::init();
        $this->objView = new SC_SiteView();
    }
    function process() {
//        parent::process();
        // レイアウトデザインを取得
        $layout = new SC_Helper_PageLayout_Ex();
        $layout->sfGetPageLayout($this, false, "index.php");

    }
    function display() {
        $this->objView->assignobj($this);
        $this->objView->display(SITE_FRAME);
    }

そして、index.phpを
$objPage->init();
$objPage->process();
$objPage->display();

としたところ、無事に表示されました。

テンプレートにアサインする段階で、objViewも道連れにアサインしちゃってますけど
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   【告知】EC-CUBE 2.0.1正式版をリリース致しました。 eccube_admin 2007/12/4 17:16
     Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 ゲスト 2007/12/4 17:57
       Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 ゲスト 2007/12/4 18:45
     Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 pineray 2007/12/5 13:29
       Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 nanasess 2007/12/5 14:50
       » Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 pineray 2007/12/5 16:41
           Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 nanasess 2007/12/7 1:11
             Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 pineray 2007/12/7 11:07
             Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 ゲスト 2010/8/30 22:46
               Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 seasoft 2010/8/30 22:58
                 Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 nanasess 2010/8/31 9:27
               Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 KAJI 2010/8/31 11:29
                 Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 ゲスト 2010/8/31 12:47
     Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 kvex2004 2007/12/5 14:16
       Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 nanasess 2007/12/5 14:51
         Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 kvex2004 2007/12/6 0:10
           Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 nanasess 2007/12/6 8:12
             Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 saratoga 2007/12/6 9:42
               Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 kvex2004 2007/12/7 0:14
                 Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 nanasess 2007/12/7 0:37
                   Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 kvex2004 2007/12/9 18:23
     Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 comeback 2007/12/7 16:36
       Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 apogee 2007/12/10 17:18
         Re: 【告知】EC-CUBE 2.0.1正式版をリリース致しました。 comeback 2007/12/10 19:10
     モジュールについて ゲスト 2007/12/10 16:30

 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は90,032名です
総投稿数は110,282件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1677
8
red
1570
9
mcontact
1343
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.