2016-03-22 6 views
0

私はマジェントで働いています。私はCSVファイルを使用していくつかのデータをインポートを追加する必要があります。私はこのURLを使用してバックエンドにモジュールを作成しました。 http://inchoo.net/magento/getting-started-with-building-admin-module-in-magento/私のコントローラでテンプレートファイルを呼び出すには?

現在、メニュー項目1.をクリックすると、balnkページが表示されます。インポートボタンと送信ボタンを追加するには、フォームファイルを作成する必要があります。ユーザーが送信ボタンをクリックすると、保存アクションが発生します。空のページにテンプレートファイルを追加する方法は?助けてください。

config.xmlが

<?xml version="1.0"?> 

<config> 
    <modules> 
     <ActiveCodeline_SampleModule1> 
      <version>0.1.0</version> 
     </ActiveCodeline_SampleModule1> 
    </modules> 


<global> 
     <helpers> 
      <SampleModule1> 
       <class>ActiveCodeline_SampleModule1_Helper</class> 
      </SampleModule1> 
     </helpers> 
</global>   


     <admin> 
     <routers> 
      <samplemodule1> 
       <use>admin</use> 
       <args> 
        <module>ActiveCodeline_SampleModule1</module> 
        <frontName>samplemodule1</frontName> 
       </args> 
      </samplemodule1> 
     </routers> 
    </admin> 



    <adminhtml> 
     <menu> 
      <menu1 translate="title" module="SampleModule1"> 
       <title>ActiveCodeline SampleModule1</title> 
       <sort_order>60</sort_order> 
       <children> 
        <menuitem1 module="SampleModule1"> 
         <title>Menu item 1</title> 
         <action>samplemodule1/example</action> 
        </menuitem1> 
       </children>     
      </menu1> 
     </menu> 
     <acl> 
      <resources> 
       <admin> 
        <children> 
         <menu1 translate="title" module="SampleModule1"> 
          <title>ActiveCodeline SampleModule1</title> 
          <sort_order>60</sort_order> 
          <children> 
           <menuitem1> 
            <title>Menu item 1</title> 
           </menuitem1> 
          </children> 
         </menu1> 
        </children> 
       </admin> 
      </resources> 
     </acl> 
     <layout> 
      <updates> 
       <itoris_dynamicproductoptions> 
        <file>activecodeline_samplemodule1.xml</file> 
       </itoris_dynamicproductoptions> 
      </updates> 
     </layout> 


    </adminhtml>  





</config> 

レイアウト/ activecodeline_samplemodule1.xml

<?xml version="1.0"?> 
<layout version="0.1.0"> 
    <default> 
    </default> 
    <samplemodule1_example_index> 
     <reference name="content"> 
      <block type="core/template" name="samplemodule1" template="activecodeline/samplemodule1/custom_import.phtml" /> 
     </reference> 
    </samplemodule1_example_index> 
</layout> 

答えて

0

あなたはconfig.xmlにあなたのレイアウト更新を追加する必要がある

 <layout> 
      <updates> 
       <mymodule> 
        <file>mymodule.xml</file> 
       </mymodule> 
      </updates> 
     </layout> 

はあなたが必要とした後、あなたは、レイアウトファイルに追加します例えば、mymodule.xmlあなたのパッケージ/テーマはadmin design namespace、dir ectory layout

<?xml version="1.0"?> 
    <layout> 
     <modules_controller_action> 
      <reference name="content"> 
       <block type="core/template" template="mymodule/template.phtml" /> 
      </reference> 
     </modules_controller_action> 
    </layout> 

どこへmodules_controller_actionパスアクション、テンプレートにmymodule/template.phtmlパス。あなたはモジュールの名前空間

+0

モジュールフォルダとこのレイアウトxmlファイルを作成する必要がありますか? –

+0

レイアウトフォルダにsamplemodule1.xmlを作成し、 "samplemodule1"という名前のテンプレートにフォルダを作成しました。このフォルダにcustom_form.phtmlファイルを作成します。しかし、それは管理者の空白ページを表示しています。 –

+0

サンプルコードレイアウトsamplemodule1.xmlとconfig.xmlをモジュールに表示します。 – Naumov

0

上で使用しているため、あなたのconfig.xmlに

<layout> 
    <updates> 
     <samplemodul1> 
      <file>activecodeline_samplemodule1.xml</file> 
     </samplemodul1> 
    </updates> 
</layout> 

をレイアウト変更 この

<layout> 
 
      <updates> 
 
       <itoris_dynamicproductoptions> 
 
        <file>activecodeline_samplemodule1.xml</file> 
 
       </itoris_dynamicproductoptions> 
 
      </updates> 
 
     </layout>

だから、あなたが必要とするあなたのconfig.xml内のコード

の下にレイアウトファイルを作成するテンプレートファイルについては

app/design/adminhtml/frontend/default/layout/activecodeline_samplemodule1.xml

あなたがadminhtmlテンプレートを作成するために滑走しているならば、 アプリ/設計/ adminhtml /フロントエンド/デフォルト/テンプレート/ NAMEOFYOURMODULE/templatefile.phtml

は、あなたなら、私を知ってみましょう質問や疑問があります

ありがとう

-1

以下の2つのコントローラ機能を確認してください。 initレイアウトはbreadcrumbsとlayout.xmlをレンダリングします。

protected function _initAction() { 
     $this->loadLayout(); 
     $this->getLayout()->getBlock("content")->setTitle($this->__("Page title")); 
     $breadcrumbs = $this->getLayout()->getBlock("breadcrumbs"); 
     $breadcrumbs->addCrumb("home", array(
     "label" => $this->__("Home Page"), 
     "title" => $this->__("Home Page"), 
     "link" => Mage::getBaseUrl() 
      )); 
     $breadcrumbs->addCrumb("custommodule", array(
     "label" => $this->__("Custom Module"), 
     "title" => $this->__("Custom Module") 
      )); 
      return $this; 
    } 
     public function indexAction() 
     { 

        $this->_initAction(); 
        $this->renderLayout(); 
     } 
+0

ので、これまでのコントローラでは、あなたがオブザーバーを指定し、イベントによってレイアウトを変更すべきか何のロジックがあってはなりません – MagentoNinja

関連する問題