2016-02-10 25 views
1

我已經一個控制器,例如在{magento_root_dir} /應用程序/代碼/核心/法師/聯繫人/控制器和一個模型對象控制器ClassA的,說ModelB在從不同的控制器的magento調用模型對象

{magento_root_dir} /應用程序/代碼/本地/ Homeliv /信息/控制器。

現在我需要從ClassA訪問ModelB,以便我可以將modelB保存在數據庫中。

我已經這樣做了:

  $lead = Mage::getModel('local/homeliv/leads/homelivleads'); 
      $lead->setName('Code Post!'); 
      $lead->setEmail('This post was created from code!'); 
      $lead->setMobile(9999); 
      $lead->save(); 

它投擲的錯誤。我在這裏做錯了什麼?

config.xml中

<config> 
    <modules> 
     <Homeliv_Leads> 
      <version>0.1.0</version> 
     </Homeliv_Leads> 
    </modules> 
    <global> 
    <!-- ... --> 
    <models> 
     <leads> 
      <class>Homeliv_Leads_Model</class> 
      <!-- 
      need to create our own resource, can't just 
      use core_resource 
      --> 
      <resourceModel>leads_resource</resourceModel> 
     </leads> 
     <leads_resource> 
      <class>Homeliv_Leads_Model_Resource</class> 
      <entities> 
       <homelivleads> 
        <table>homeliv_leads</table> 
       </homelivleads> 
      </entities> 

     </leads_resource> 
    </models> 
    <!-- ... --> 
</global> 
</config> 

/var/www/html/app/code/local/Homeliv/Leads/Model/HomelivLeads.php:

class Homeliv_Leads_Model_HomelivLeads extends Mage_Core_Model_Abstract 
{ 
    protected function _construct() 
    { 
     $this->_init('leads/homelivleads'); 
    } 
} 

在/ var/WWW /html/app/code/local/Homeliv/Leads/Model/Resource/HomelivLeads.php:

class Homeliv_Leads_Model_Resource_HomelivLeads extends Mage_Core_Model_Resource_Db_Abstract{ 
    protected function _construct() 
    { 
     $this->_init('leads/homelivleads', 'id'); 
    } 
} 

在/ var/www/html等/應用/代碼/ LOC人/ Homeliv /信息/型號/資源/ HomelivLeads/Collection.php:

class Homeliv_Leads_Model_Resource_HomelivLeads_Collection extends Mage_Core_Model_Resource_Db_Collection_Abstract { 
    protected function _construct() 
    { 
      $this->_init('leads/homelivleads'); 
    } 
} 

在/ var/www/html等/應用/ etc/modules中

<config> 
    <modules> 
     <Homeliv_Leads> 
      <active>true</active> 
      <codePool>local</codePool> 
     </Homeliv_Leads> 
    </modules> 
</config> 
+0

fyi:顯示500內部服務器錯誤 – zomato

回答

2

如果您已經創建了一個單獨的模型在這裏「app/code/local/Homeliv/Leads/Model /」,則可以使用

$lead = Mage::getModel('leads/homelivleads'); 
+0

不能正常工作。此外,我正在記錄文件,沒有什麼顯示在system.log上。我已經從管理面板啓用了它,並且對日誌文件夾的權限是777 – zomato

+0

您是否在「app/code/local/Homeliv/Leads/Model /」目錄中創建了模型,資源模型和集合模型? –

+0

我還沒有創建集合模型,我已創建休息。我現在不提取任何收藏,這仍然是必要的。無論如何,我會創建它,並檢查它 – zomato

相關問題