Mysql
 sql >> база данни >  >> RDS >> Mysql

Нуждаете се от помощ за разбирането на обектите за колекция от продукти на Magento и модела на каталог/продукт

Имате няколко начина за достъп до данни от magento :

  • използвайки load() => зарежда ВСИЧКИ данни (атрибути) по отношение на модела. Много е бавен и унищожаващ производителността. За продукт трябва да използвате load() само на продуктовата страница (тъй като всички данни, които ще използвате на тази страница, са свързани с един обект .. така че можете да го заредите докрай)

  • използване на колекция => когато трябва да извлечете списък с обекти, трябва да използвате (поне) колекция. От вас зависи да решите списъка с атрибути, който искате да извлечете. Можете да добавите атрибут за избор/филтриране и колекцията ще успее да направи SQL присъединява към EAV таблици и т.н. във фонов режим

  • използването на персонализиран SQL => колекцията може да бъде бавна при работа със сложни обекти (колекция инициализира много SQL присъединявания към таблица, която може да не ви трябва)... последният метод за достъп до данни от BDD е да създадете свой собствен SQL във вашия ResourceModel

В скрипта, който показвате, има огромна грешка:зареждате пълен модел в foreach итерация на колекция. Никога не трябва да правите това, ако трябва да заредите() продукта, предполагам, че е защото не сте намерили атрибут в колекцията? В този случай трябва само да модифицирате колекцията, за да извлечете атрибута...

За продукт например, magento предлага начин за автоматично добавяне (или премахване) на атрибути към всеки продукт->колекция, която инстанциирате. (вижте XML тага frontend/product/collection/attributes в config.xml на Mage_Catalog)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ефективно наблюдение на MySQL с табла за управление на SCUMM:Част първа

  2. MySQL:Изберете изпълнение на заявка и времето за извличане на резултата се увеличава с броя на връзките

  3. Как да се свържете и да зададете заявка за MySQL от Lua?

  4. Вмъкване на PDO в БД

  5. Изберете отделни редове от две таблици, подредени по дата