Empty Collection :: CollectionFactory Approach and getCollection approach both give empty result Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Unit Test for overwrite collection class in magento2Observer event Argument 1 passed to AbstractDb::load() must be an instance of AbstractModelmain.CRITICAL: Plugin class doesn't existCall to undefined method on custom collection Resource ModelBest way to include namespaces in Magento 2What preference to use for MagentoFrameworkDBAdapterAdapterInterface?Magento 2 Create dynamic array From different Model Collection to use in multi select in gridMagento 2: How to override model resource configurable filePHP Fatal error: Uncaught TypeError: Argument 1 passed to Magento\Framework\Data\Collection\AbstractDb::setConnection() must implement interfaceIncompatible argument type error during compilation in Magento2.2.5?

What is the largest species of polychaete?

Can the prologue be the backstory of your main character?

Classification of bundles, Postnikov towers, obstruction theory, local coefficients

Cold is to Refrigerator as warm is to?

Determine whether f is a function, an injection, a surjection

How do I automatically answer y in bash script?

How to rotate it perfectly?

What's the point in a preamp?

Stars Make Stars

Do we know why communications with Beresheet and NASA were lost during the attempted landing of the Moon lander?

What do you call a plan that's an alternative plan in case your initial plan fails?

Stop battery usage [Ubuntu 18]

When is phishing education going too far?

Array/tabular for long multiplication

Single author papers against my advisor's will?

Using "nakedly" instead of "with nothing on"

How to politely respond to generic emails requesting a PhD/job in my lab? Without wasting too much time

When communicating altitude with a '9' in it, should it be pronounced "nine hundred" or "niner hundred"?

Did the new image of black hole confirm the general theory of relativity?

Blender game recording at the wrong time

I'm having difficulty getting my players to do stuff in a sandbox campaign

How does modal jazz use chord progressions?

Should you tell Jews they are breaking a commandment?

Unexpected result with right shift after bitwise negation



Empty Collection :: CollectionFactory Approach and getCollection approach both give empty result



Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
Announcing the arrival of Valued Associate #679: Cesar Manara
Unicorn Meta Zoo #1: Why another podcast?Unit Test for overwrite collection class in magento2Observer event Argument 1 passed to AbstractDb::load() must be an instance of AbstractModelmain.CRITICAL: Plugin class doesn't existCall to undefined method on custom collection Resource ModelBest way to include namespaces in Magento 2What preference to use for MagentoFrameworkDBAdapterAdapterInterface?Magento 2 Create dynamic array From different Model Collection to use in multi select in gridMagento 2: How to override model resource configurable filePHP Fatal error: Uncaught TypeError: Argument 1 passed to Magento\Framework\Data\Collection\AbstractDb::setConnection() must implement interfaceIncompatible argument type error during compilation in Magento2.2.5?



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








0















I have created a table in my database using db_schema.xml and then populated that table with sql insert commands directly in mysql workbench.



My model code is



<?php

namespace LmapStarTrackShippingModel;

use MagentoFrameworkModelAbstractModel;



class StarTrackRates extends AbstractModel

protected $_eventPrefix = 'startrack_rates_event';

protected function _construct()


$this->_init(LmapStarTrackShippingModelResourceModelStarTrackRates::class);





ReosurceModel codes is



<?php
namespace LmapStarTrackShippingModelResourceModel;

use MagentoFrameworkModelResourceModelDbAbstractDb;

class StarTrackRates extends AbstractDb

protected function _construct()

$this->_init('lmap_shipping_tablerate', 'id');





The collection Class is



<?php

namespace LmapStartrackShippingModelResourceModelStarTrackRates;

use LmapStarTrackShippingModelStarTrackRates;
use LmapStarTrackShippingModelResourceModelStarTrackRates as StarTrackRatesResource;
use MagentoFrameworkModelResourceModelDbCollectionAbstractCollection;

/**
* Start Track Shipping table rates collection
*/
class Collection extends AbstractCollection


protected $_idFieldName = 'id';

protected function _construct()

$this->_init(StarTrackRates ::class, StarTrackRatesResource::class);






My Helper Method to retrieve row from the table



<?php

namespace LmapStarTrackShippingHelper;

use LmapStarTrackShippingModelResourceModelStarTrackRatesCollectionFactory;
use LmapStarTrackShippingModelStarTrackRatesFactory;
use LmapStarTrackShippingModelStarTrackRates;
use PsrLogLoggerInterface;

Class FetchShippingRate
{

private $stRatesCollectionFactory;
private $stRatesFactory;
private $stRates;


/**
* @var PsrLogLoggerInterface
*/
private $logger;

/**
* @param PsrLogLoggerInterface $logger
* This construct with double underscore is required to initialize other classes as LoggerInterface, CollectionFactory etc
* This concept is taken from MagentoOfflineShippingModelResourceModelCarrierTablerate.php;
*/
public function __construct(LoggerInterface $logger,CollectionFactory $CollectionFactory,StarTrackRatesFactory $StarTrackRatesFactory,StarTrackRates $StarTrackRates)

$this->logger = $logger;
$this->stRatesCollectionFactory = $CollectionFactory;
$this->stRatesFactory = $StarTrackRatesFactory;
$this->stRates = $StarTrackRates;



public function fetchRate()

$var =2600;
$postcode_rate_row = $this->stRatesCollectionFactory->create()->getItemsByColumnValue('postcode', '2600');
$collection = $this->stRatesFactory->create()->getCollection();
$collection->addFieldToSelect('*')->addFieldToFilter('postcode',array('eq'=>'2600'));

foreach ($collection as $rate)
$this->logger->debug('Rate is:');
$this->logger->debug(var_dump($collection));
$this->logger->debug(var_dump($rate->toarray(),'$rate'));



$this->logger->debug('Rates are: '.var_dump($postcode_rate_row));
return $postcode_rate_row;




Invoking fetchRate() method gives an empty array. I have used both approaches of using collectionFactory and using modelFactory method getCollection() but to no avail and I get empty array. Here is the screen shot of the row I'm trying to retrieve. Please help this thing is bugging me for four days now and I'm not able to find some solid solution.
enter image description here










share|improve this question




























    0















    I have created a table in my database using db_schema.xml and then populated that table with sql insert commands directly in mysql workbench.



    My model code is



    <?php

    namespace LmapStarTrackShippingModel;

    use MagentoFrameworkModelAbstractModel;



    class StarTrackRates extends AbstractModel

    protected $_eventPrefix = 'startrack_rates_event';

    protected function _construct()


    $this->_init(LmapStarTrackShippingModelResourceModelStarTrackRates::class);





    ReosurceModel codes is



    <?php
    namespace LmapStarTrackShippingModelResourceModel;

    use MagentoFrameworkModelResourceModelDbAbstractDb;

    class StarTrackRates extends AbstractDb

    protected function _construct()

    $this->_init('lmap_shipping_tablerate', 'id');





    The collection Class is



    <?php

    namespace LmapStartrackShippingModelResourceModelStarTrackRates;

    use LmapStarTrackShippingModelStarTrackRates;
    use LmapStarTrackShippingModelResourceModelStarTrackRates as StarTrackRatesResource;
    use MagentoFrameworkModelResourceModelDbCollectionAbstractCollection;

    /**
    * Start Track Shipping table rates collection
    */
    class Collection extends AbstractCollection


    protected $_idFieldName = 'id';

    protected function _construct()

    $this->_init(StarTrackRates ::class, StarTrackRatesResource::class);






    My Helper Method to retrieve row from the table



    <?php

    namespace LmapStarTrackShippingHelper;

    use LmapStarTrackShippingModelResourceModelStarTrackRatesCollectionFactory;
    use LmapStarTrackShippingModelStarTrackRatesFactory;
    use LmapStarTrackShippingModelStarTrackRates;
    use PsrLogLoggerInterface;

    Class FetchShippingRate
    {

    private $stRatesCollectionFactory;
    private $stRatesFactory;
    private $stRates;


    /**
    * @var PsrLogLoggerInterface
    */
    private $logger;

    /**
    * @param PsrLogLoggerInterface $logger
    * This construct with double underscore is required to initialize other classes as LoggerInterface, CollectionFactory etc
    * This concept is taken from MagentoOfflineShippingModelResourceModelCarrierTablerate.php;
    */
    public function __construct(LoggerInterface $logger,CollectionFactory $CollectionFactory,StarTrackRatesFactory $StarTrackRatesFactory,StarTrackRates $StarTrackRates)

    $this->logger = $logger;
    $this->stRatesCollectionFactory = $CollectionFactory;
    $this->stRatesFactory = $StarTrackRatesFactory;
    $this->stRates = $StarTrackRates;



    public function fetchRate()

    $var =2600;
    $postcode_rate_row = $this->stRatesCollectionFactory->create()->getItemsByColumnValue('postcode', '2600');
    $collection = $this->stRatesFactory->create()->getCollection();
    $collection->addFieldToSelect('*')->addFieldToFilter('postcode',array('eq'=>'2600'));

    foreach ($collection as $rate)
    $this->logger->debug('Rate is:');
    $this->logger->debug(var_dump($collection));
    $this->logger->debug(var_dump($rate->toarray(),'$rate'));



    $this->logger->debug('Rates are: '.var_dump($postcode_rate_row));
    return $postcode_rate_row;




    Invoking fetchRate() method gives an empty array. I have used both approaches of using collectionFactory and using modelFactory method getCollection() but to no avail and I get empty array. Here is the screen shot of the row I'm trying to retrieve. Please help this thing is bugging me for four days now and I'm not able to find some solid solution.
    enter image description here










    share|improve this question
























      0












      0








      0








      I have created a table in my database using db_schema.xml and then populated that table with sql insert commands directly in mysql workbench.



      My model code is



      <?php

      namespace LmapStarTrackShippingModel;

      use MagentoFrameworkModelAbstractModel;



      class StarTrackRates extends AbstractModel

      protected $_eventPrefix = 'startrack_rates_event';

      protected function _construct()


      $this->_init(LmapStarTrackShippingModelResourceModelStarTrackRates::class);





      ReosurceModel codes is



      <?php
      namespace LmapStarTrackShippingModelResourceModel;

      use MagentoFrameworkModelResourceModelDbAbstractDb;

      class StarTrackRates extends AbstractDb

      protected function _construct()

      $this->_init('lmap_shipping_tablerate', 'id');





      The collection Class is



      <?php

      namespace LmapStartrackShippingModelResourceModelStarTrackRates;

      use LmapStarTrackShippingModelStarTrackRates;
      use LmapStarTrackShippingModelResourceModelStarTrackRates as StarTrackRatesResource;
      use MagentoFrameworkModelResourceModelDbCollectionAbstractCollection;

      /**
      * Start Track Shipping table rates collection
      */
      class Collection extends AbstractCollection


      protected $_idFieldName = 'id';

      protected function _construct()

      $this->_init(StarTrackRates ::class, StarTrackRatesResource::class);






      My Helper Method to retrieve row from the table



      <?php

      namespace LmapStarTrackShippingHelper;

      use LmapStarTrackShippingModelResourceModelStarTrackRatesCollectionFactory;
      use LmapStarTrackShippingModelStarTrackRatesFactory;
      use LmapStarTrackShippingModelStarTrackRates;
      use PsrLogLoggerInterface;

      Class FetchShippingRate
      {

      private $stRatesCollectionFactory;
      private $stRatesFactory;
      private $stRates;


      /**
      * @var PsrLogLoggerInterface
      */
      private $logger;

      /**
      * @param PsrLogLoggerInterface $logger
      * This construct with double underscore is required to initialize other classes as LoggerInterface, CollectionFactory etc
      * This concept is taken from MagentoOfflineShippingModelResourceModelCarrierTablerate.php;
      */
      public function __construct(LoggerInterface $logger,CollectionFactory $CollectionFactory,StarTrackRatesFactory $StarTrackRatesFactory,StarTrackRates $StarTrackRates)

      $this->logger = $logger;
      $this->stRatesCollectionFactory = $CollectionFactory;
      $this->stRatesFactory = $StarTrackRatesFactory;
      $this->stRates = $StarTrackRates;



      public function fetchRate()

      $var =2600;
      $postcode_rate_row = $this->stRatesCollectionFactory->create()->getItemsByColumnValue('postcode', '2600');
      $collection = $this->stRatesFactory->create()->getCollection();
      $collection->addFieldToSelect('*')->addFieldToFilter('postcode',array('eq'=>'2600'));

      foreach ($collection as $rate)
      $this->logger->debug('Rate is:');
      $this->logger->debug(var_dump($collection));
      $this->logger->debug(var_dump($rate->toarray(),'$rate'));



      $this->logger->debug('Rates are: '.var_dump($postcode_rate_row));
      return $postcode_rate_row;




      Invoking fetchRate() method gives an empty array. I have used both approaches of using collectionFactory and using modelFactory method getCollection() but to no avail and I get empty array. Here is the screen shot of the row I'm trying to retrieve. Please help this thing is bugging me for four days now and I'm not able to find some solid solution.
      enter image description here










      share|improve this question














      I have created a table in my database using db_schema.xml and then populated that table with sql insert commands directly in mysql workbench.



      My model code is



      <?php

      namespace LmapStarTrackShippingModel;

      use MagentoFrameworkModelAbstractModel;



      class StarTrackRates extends AbstractModel

      protected $_eventPrefix = 'startrack_rates_event';

      protected function _construct()


      $this->_init(LmapStarTrackShippingModelResourceModelStarTrackRates::class);





      ReosurceModel codes is



      <?php
      namespace LmapStarTrackShippingModelResourceModel;

      use MagentoFrameworkModelResourceModelDbAbstractDb;

      class StarTrackRates extends AbstractDb

      protected function _construct()

      $this->_init('lmap_shipping_tablerate', 'id');





      The collection Class is



      <?php

      namespace LmapStartrackShippingModelResourceModelStarTrackRates;

      use LmapStarTrackShippingModelStarTrackRates;
      use LmapStarTrackShippingModelResourceModelStarTrackRates as StarTrackRatesResource;
      use MagentoFrameworkModelResourceModelDbCollectionAbstractCollection;

      /**
      * Start Track Shipping table rates collection
      */
      class Collection extends AbstractCollection


      protected $_idFieldName = 'id';

      protected function _construct()

      $this->_init(StarTrackRates ::class, StarTrackRatesResource::class);






      My Helper Method to retrieve row from the table



      <?php

      namespace LmapStarTrackShippingHelper;

      use LmapStarTrackShippingModelResourceModelStarTrackRatesCollectionFactory;
      use LmapStarTrackShippingModelStarTrackRatesFactory;
      use LmapStarTrackShippingModelStarTrackRates;
      use PsrLogLoggerInterface;

      Class FetchShippingRate
      {

      private $stRatesCollectionFactory;
      private $stRatesFactory;
      private $stRates;


      /**
      * @var PsrLogLoggerInterface
      */
      private $logger;

      /**
      * @param PsrLogLoggerInterface $logger
      * This construct with double underscore is required to initialize other classes as LoggerInterface, CollectionFactory etc
      * This concept is taken from MagentoOfflineShippingModelResourceModelCarrierTablerate.php;
      */
      public function __construct(LoggerInterface $logger,CollectionFactory $CollectionFactory,StarTrackRatesFactory $StarTrackRatesFactory,StarTrackRates $StarTrackRates)

      $this->logger = $logger;
      $this->stRatesCollectionFactory = $CollectionFactory;
      $this->stRatesFactory = $StarTrackRatesFactory;
      $this->stRates = $StarTrackRates;



      public function fetchRate()

      $var =2600;
      $postcode_rate_row = $this->stRatesCollectionFactory->create()->getItemsByColumnValue('postcode', '2600');
      $collection = $this->stRatesFactory->create()->getCollection();
      $collection->addFieldToSelect('*')->addFieldToFilter('postcode',array('eq'=>'2600'));

      foreach ($collection as $rate)
      $this->logger->debug('Rate is:');
      $this->logger->debug(var_dump($collection));
      $this->logger->debug(var_dump($rate->toarray(),'$rate'));



      $this->logger->debug('Rates are: '.var_dump($postcode_rate_row));
      return $postcode_rate_row;




      Invoking fetchRate() method gives an empty array. I have used both approaches of using collectionFactory and using modelFactory method getCollection() but to no avail and I get empty array. Here is the screen shot of the row I'm trying to retrieve. Please help this thing is bugging me for four days now and I'm not able to find some solid solution.
      enter image description here







      magento2 database collection magento2.3 declarative-schema






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 17 mins ago









      Farhan SaeedFarhan Saeed

      83




      83




















          0






          active

          oldest

          votes












          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "479"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f270038%2fempty-collection-collectionfactory-approach-and-getcollection-approach-both-g%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Magento Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f270038%2fempty-collection-collectionfactory-approach-and-getcollection-approach-both-g%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          کانن (شرکت) محتویات تاریخچه[ویرایش] بخشی از تولیدات موفق این شرکت[ویرایش] در رده APS-C[ویرایش] گزارش محیط زیست[ویرایش] رده‌بندی محصولات[ویرایش] منابع[ویرایش] پانویس[ویرایش] پیوند به بیرون[ویرایش] منوی ناوبریwww.canon.comموزه آنلاین دوربین‌های کانننمودار تاریخچه سهام کاننوبگاه رسمی شرکت کاننوووووIDC Worldwide Hardcopy 2013

          Rest API with Magento using PHP with example. Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?How to update product using magento client library for PHP?Oauth Error while extending Magento Rest APINot showing my custom api in wsdl(url) and web service list?Using Magento API(REST) via IXMLHTTPRequest COM ObjectHow to login in Magento website using REST APIREST api call for Guest userMagento API calling using HTML and javascriptUse API rest media management by storeView code (admin)Magento REST API Example ErrorsHow to log all rest api calls in magento2?How to update product using magento client library for PHP?

          Magento 2 - Auto login with specific URL Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Customer can't login - Page refreshes but nothing happensCustom Login page redirectURL to login with redirect URL after completionCustomer login is case sensitiveLogin with phone number or email address - Magento 1.9Magento 2: Set Customer Account Confirmation StatusCustomer auto connect from URLHow to call customer login form in the custom module action magento 2?Change of customer login error message magento2Referrer URL in modal login form