タグ付けされた質問 「model」

モデルには、Magentoモジュールのビジネスロジックのほとんどが含まれています

4
特別オファーで製品のカテゴリを取得する
特別オファーのすべての製品のカテゴリのリストを取得するにはどうすればよいですか。それは少しトリッキーです。以下を使用して製品のリストを取得できます。 $collection ->addAttributeToFilter( array( array('attribute' => 'news_from_date', 'is'=>new Zend_Db_Expr('not null')), array('attribute' => 'news_to_date', 'is'=>new Zend_Db_Expr('not null')) ) ) ->addAttributeToFilter('news_from_date', array('or'=> array( 0 => array('date' => true, 'to' => $todayEndOfDayDate), 1 => array('is' => new Zend_Db_Expr('null'))) ), 'left') ->addAttributeToFilter('news_to_date', array('or'=> array( 0 => array('date' => true, 'from' => $todayStartOfDayDate), 1 => …

3
$ Status-> save()を呼び出さなくても、StatusHistoryCommentを注文することができますか?
$ order-> save()イベントをディスパッチしたくないので、これが必要です。私は何かしたいです$order->_getResource()->saveAttribute($order, 'statusHistoryComment'); 私はどんな考えでも喜んでいます:) UPD:saveAttributeEAVモデルのみで作業しているようです。フラットはどうですか?

4
Magento 2でストアごとのカテゴリコレクションを取得する方法
特定のストアからすべてのカテゴリ名を取得したい。私はしようとしています: $categoryFactory = $objectManager->create('Magento\Catalog\Model\ResourceModel\Category\CollectionFactory'); $categories = $categoryFactory->create() ->addAttributeToSelect('*') ->setProductStoreId($store->getId()); foreach ($categories as $category){ $category->getName(); } ただし、すべてのカテゴリが同じ言語で表示されます(同じストアビュー)。 だから->setProductStoreId($store->getId())動作しません。 私もやってみました$category->setStoreId($store->getId())->getName()。 特定のストアビューのすべてのカテゴリ名を取得するにはどうすればよいですか?

1
getsingleton()およびgetModel()の使用
いつ使用するかを決定するための一連のガイドラインはありますか mage::getModel() and mage::getSingleton() 私が知ることができることから、g​​etSingletonはモデル/クラスの既存のインスタンスを取得するか、存在しない場合にのみ新しいインスタンスを作成するかのようです。一方、getModel()は、既存のものに関係なく作成します。これは正しいです? これらを正しく理解しているとすれば、常にmage :: getSingleton()を使用するのは意味がありません。明らかに、そうでなければgetModel()は使用されません。それで、それぞれをいつ使うべきですか? これらを正しく使用する主な利点は何ですか?パフォーマンスを改善するか、重複を避けるのに役立つか、または一般的にベストプラクティスを適用する必要がありますか?
7 model  class 

2
getData( 'name')とgetName()の違いは何ですか
私はmagento 1.8を使用しています そして、私は以下の方法を使用すると問題に直面しています $product->getData('name'); $product->getName(); それらは同じですか、それらは同じ値を返すと確信しています[answer]。使用しているときにエラーが発生する Fatal error: Call to a member function getData() on a non-object in これらの2つの関数の正確な違いを知っているかもしれません。 ありがとうございました、

5
Magentoのお客様がメモリリークを保存
私は顧客データを一括で編集しようとしています(数千レコード)。Magentoはスクリプトを実行するために利用可能なメモリを使い果たし続けています。 memory_get_usage()犯人とのいくつかのテストの後、$customer->save()保存ごとに5Mのメモリを使用するように見える方法のようですが、完了時に解放しません。 その結果、数千のレコードをループするときに、メモリが不足しています。 これが私がこれまでに試したことです: $customer->clearInstance() unset($customer) これは助けにはならないようです。 以下は私のコードです: public function createCustomerAddress($customerAddressData, $email){ $customer = Mage::getModel('customer/customer'); $customer->setWebsiteId(Mage::app()->getWebsite()->getId()); $customer->loadByEmail($email); $address = Mage::getModel('customer/address'); $address->addData($customerAddressData); $customer->addAddress($address); unset($address); try{ $customer->save(); }catch (Exception $e){ var_dump($customerAddressData); var_dump($e->getMessage()); } echo "\n" . "Before unsetting \n" . memory_get_usage() . "\n"; $customer->clearInstance(); unset($customer); echo "\n" . "After \n" . memory_get_usage() …

1
コレクションのカスタムソート順
画像に示すように、「id」ではなく「sort_order」フィールドに基づいてコレクションをソートする必要があります。 $collection=Mage::getResourceModel('banners/manage_collection'); $collection->getSelect()->order('sort_order','DESC'); そして 私はこれを試しましたが、常にidフィールドに基づいてコレクションを返します。

2
FLATカテゴリが有効な場合、親カテゴリのサブカテゴリを取得します
現在のカテゴリのサブカテゴリのみを表示するカスタムメニューを作成するために、ブロッククラスMage_Catalog_Block_Navigation(署名へのリンク)をオーバーライドします。 内部メソッドrenderCategoriesMenuHtml(署名へのリンク)選択した親カテゴリの子カテゴリを取得しようとしています。だから私はデフォルトのコードを置き換えました: foreach ($this->getStoreCategories() as $child) { //... } 次のように: /** * @param $parent ID of category from which we start * @param $recursionLevel How many levels of subcategories retrieve * getCategories(...) is a method from model Mage_Catalog_Model_Category */ $category = Mage::getModel('catalog/category'); $storeCategories = $category->getCategories($parent, $recursionLevel); foreach ($storeCategories as $child) …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.