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?

Is above average number of years spent on PhD considered a red flag in future academia or industry positions?

How to rotate it perfectly?

Unable to start mainnet node docker container

Estimate capacitor parameters

Is there a service that would inform me whenever a new direct route is scheduled from a given airport?

Simulating Exploding Dice

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

Blender game recording at the wrong time

New Order #5: where Fibonacci and Beatty meet at Wythoff

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

Two different pronunciation of "понял"

Why is "Captain Marvel" translated as male in Portugal?

Can smartphones with the same camera sensor have different image quality?

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

Does a C shift expression have unsigned type? Why would Splint warn about a right-shift?

What items from the Roman-age tech-level could be used to deter all creatures from entering a small area?

3 doors, three guards, one stone

Cold is to Refrigerator as warm is to?

Is there folklore associating late breastfeeding with low intelligence and/or gullibility?

Using "nakedly" instead of "with nothing on"

Who can trigger ship-wide alerts in Star Trek?

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

How can I make names more distinctive without making them longer?

Can a zero nonce be safely used with AES-GCM if the key is random and never used again?



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




























    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
























      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














      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












      share










      share



      share










      asked 7 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

          Can not update quote_id field of “quote_item” table magento 2Magento 2.1 - We can't remove the item. (Shopping Cart doesnt allow us to remove items before becomes empty)Add value for custom quote item attribute using REST apiREST API endpoint v1/carts/cartId/items always returns error messageCorrect way to save entries to databaseHow to remove all associated quote objects of a customer completelyMagento 2 - Save value from custom input field to quote_itemGet quote_item data using quote id and product id filter in Magento 2How to set additional data to quote_item table from controller in Magento 2?What is the purpose of additional_data column in quote_item table in magento2Set Custom Price to Quote item magento2 from controller

          Magento 2 disable Secret Key on URL's from terminal The Next CEO of Stack OverflowMagento 2 Shortcut/GUI tool to perform commandline tasks for windowsIn menu add configuration linkMagento oAuth : Generating access token and access secretMagento 2 security key issue in Third-Party API redirect URIPublic actions in admin controllersHow to Disable Cache in Custom WidgetURL Key not changing in Magento 2Product URL Key gets deleted when importing custom options - Magento 2Problem with reindex terminalMagento 2 - bin/magento Commands not working in Cpanel Terminal

          Aasi (pallopeli) Navigointivalikko