我是在Magento 2成功helloworld簡單模塊..現在我想從數據庫中獲取模型數據...所以請幫助我在Magento 2中獲取模型。 任何幫助,將不勝感激。在magento 2 getModel的正確方法是什麼?
3
A
回答
11
下面是在Magento創建模型2模塊以下步驟:
在模型文件夾創建
Question.php
對於問題模型如下:namespace Ecom\HelloWorld\Model; class Question extends \Magento\Framework\Model\AbstractModel { public function __construct( \Magento\Framework\Model\Context $context, \Magento\Framework\Registry $registry, \Magento\Framework\Model\ResourceModel\AbstractResource $resource = null, \Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null, array $data = [] ) { parent::__construct($context, $registry, $resource, $resourceCollection, $data); } public function _construct() { $this->_init('Ecom\HelloWorld\Model\ResourceModel\Question'); } }
在ResourceModel文件夾創建
Question.php
對於問題資源型號如下:namespace Ecom\HelloWorld\Model\ResourceModel; class Question extends \Magento\Framework\Model\ResourceModel\Db\AbstractDb { public function _construct() { $this->_init('question_table_name', 'question_id'); } }
創建ResourceModel /問題的文件夾
Collection.php
對於問題集型號如下:namespace Ecom\HelloWorld\Model\ResourceModel\Question; class Collection extends \Magento\Framework\Model\ResourceModel\Db\Collection\AbstractCollection { public function _construct() { $this->_init('Ecom\HelloWorld\Model\Question', 'Ecom\HelloWorld\Model\ResourceModel\Question'); } }
現在,您可以撥打以下方式型號:
$question = $this->_objectManager->create('Ecom\HelloWorld\Model\Question');
$question->setTitle('Simple Question');
$question->setDescription('Question Description');
$question->save();
對於設置腳本:
有兩種不同類型的安裝腳本。模式安裝和數據安裝。模式安裝用於安裝數據庫結構,如新表,列,關係。 數據安裝或升級用於將數據添加到數據庫中,如設置,頁面等。
如果模塊已經創建,您需要在設置文件夾中創建'UpgradeSchema.php'文件並添加新的數據庫結構更新。如果未安裝模塊,則需要創建'InstallSchema.php'以添加新的數據庫結構。
爲了簡化,在Magento 2,你可以有6種不同的設置類的模塊:
`Setup/InstallSchema` - Script that needs to run to create database schema when module installed
`Setup/UpgradeSchema` - Script that needs to run to update or createdatabase schema when module upgraded
`Setup/InstallData` - Data Import when module installed
`Setup/UpgradeData` - Data Import when module upgraded
`Setup/Recurring` - Script run everytime when module upgrade
`Setup/Uninstall` - Script run when Module uninstalled
沒有單獨的版本安裝文件了,每個動作只有一個類。
完成所有更改後,您需要運行以下命令:php bin/magentosetup:upgrade
相關問題
- 1. 在magento 2中加密和解密數據的正確方法是什麼?
- 2. 在Magento中設置觀察者的正確方法是什麼?
- 3. 在Swift 2中,禁用NSMenuItem的正確方法是什麼?
- 4. 在角2中實現註銷的正確方法是什麼?
- 5. 在Play 2.x中配置actor的正確方法是什麼?
- 6. 什麼是SPOJ COURIER的正確方法
- 7. 這是做什麼的正確方法?
- 8. 做SlideAnimation的正確方法是什麼?
- 9. reactjs中的正確方法是什麼?
- 10. 什麼是cakePHP2x中的AuthComponent :: getModel()替代方法?
- 11. 什麼是正確的設計方法?
- 12. C++ API - 什麼是正確的方法
- 13. AngularJS - 這是什麼正確的方法?
- 14. Angular 2 Testing:什麼是異步測試的正確方法?
- 15. QSqlDatabase&QSqlQuery的正確方法是什麼?
- 16. 什麼是合併2 javax.json.JsonObject的正確方法?
- 17. 在python中派生類方法的正確方法是什麼?
- 18. 什麼是正確的方式在.net
- 19. 返回UISlider方法的INT的正確方法是什麼?
- 20. 使用magento SOAP API的多重方法有什麼正確的方法?
- 21. 使用android.text.format.DateFormat.format方法的正確方法是什麼
- 22. Magento的阿賈克斯和法師:: getModel
- 23. 什麼是magento 2中的1column.phtml 2
- 24. Python,確定Unix進程是否正在運行的正確方法是什麼?
- 25. 調用d.dispose()或s.cancel()方法的正確方法是什麼?
- 26. 在PHP中調試的正確方法是什麼
- 27. 什麼是測試方法時使用mock的正確方法?
- 28. 什麼是使用AttributeCollection.Render方法的正確方法?
- 29. 以抽象方法寫javadoc的正確方法是什麼
- 30. Ruby/Rails:重寫rails方法的正確方法是什麼?
您是谷歌嗎? –
是的..我指這個鏈接:http://magento-quickies.alanstorm.com/post/66167788899/magento-2-replacements-for-getmodel-and – Niks
但它沒有工作 – Niks