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

          منجزی محتویات تیره‌های طایفه منجزی[ویرایش] مشاهیر طایفه منجزی[ویرایش] محل سکونت[ویرایش] پانویس[ویرایش] منابع[ویرایش] منوی ناوبری«نمودار اجتماعی طوایف بختیاری»«BakhtyārBAḴTĪĀRĪ TRIBE»«اسامی طوایف و شعب ایل بختیاری»ووگسترش آن

          What does the writing on Poe's helmet say? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Favorite questions and answers from first quarter of 2019 Latest Blog Post: Avengers: Endgame PredictionsWhat is the purpose of the blast shield helmet?Why was the Stormtrooper helmet designed this way?What does Kylo Ren place his helmet on?What does the writing on Poe Dameron's flight vest say?Is this Poe Damerons dad? (Kes Dameron)Is Poe Dameron Force-Sensitive?Why is Poe Dameron so shocked in the First Order star destroyer hangar?What does the code breaker's hat say?In “The Last Jedi” was it actually Poe's fault that so much of the resistance died?Did Poe Dameron make custom modifications to his black X-Wing?

          How to implement Time Range Picker in Magento 2 Admin system.xml? The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)Date field system.xmlMagento 2 - time picker on backend (xml form)How to overwrite System.xml?Magento 2 Pattern Library — Date & Time SelectorsHTTP 500 Error in System ConfigurationMagento 2 - time picker on backend (xml form)Magento 2 Add Datetime picker in system.xmlDate Time picker and time zone woesHow to implement Single Date and Time Picker in Magento 2Custom Module for Custom Column using Plugin Yes/No optionMagento 2 DateTime picker - Limit time selection rangeMagento2 UI Component admin Grid / Listing stuck loading