1

我按照这个问题的已接受答案中的说明创建了一个模型和模型资源文件。

公司/项目/模型/Album.php

<?php

namespace Company\Project\Model;

class Album extends \Magento\Framework\Model\AbstractModel {

    public function __construct(
    \Magento\Framework\Model\Context $context,
    \Magento\Framework\Registry $registry,
    \Psr\Log\LoggerInterface $logger,
    \Magento\Framework\Model\Resource\AbstractResource $resource = null,
    \Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
    array $data = []
    ) {
       $this->_logger = $logger;
       $this->_logger->addInfo("SO WE CAN ACTUALLY GET INTO THE MODEL FILE");
       parent::__construct($context, $registry, $resource, $resourceCollection, $data);
    }

  public function _construct() {
    $this->_init('Company\Project\Model\Resource\Album');
  }
}

公司/项目/模型/资源/Album.php

<?php

namespace Company\Project\Model\Resource;

class Album extends \Magento\Framework\Model\Resource\Db\AbstractDb {
    public function _construct() {
    $this->_init('px_product_albums', 'id');
    }
}

Company/Project/Helper/Data.php - 这是我得到错误的地方

<?php

class Data extend \Magento\Framework\App\Helper\AbstractHelper {
    .....
    protected $pageFactory;

    public function __construct(
      ....
      \Magento\Cms\Model\PageFactory $pageFactory
    )
    ......

    function whereStuffIsHappening() {
    .....
      $albumId = WeHaveTheValue;
      $productId = WeHaveThisValueToo;
      $album = $this->pageFactory->create('Company\Project\Model\Album');
      $this->_logger->addInfo("Album code is alright");
      $album->setProductId($product->getId())->setPixleeAlbumId($albumId);
      $album->save();
      $this->_logger->addInfo("ALBUM ID SUCCESSFULLY SAVED");

似乎以下行没有执行。我收到 503(服务不可用)。

$album = $this->pageFactory->create('Company\Project\Model\Album');

我尝试过的一些事情

奇怪的是,我从来没有看到“所以我们可以真正进入模型文件”的记录(它是模型文件中的打印语句)。这使我认为该模型尚未启动。但我可能是错的。

帮助?

4

0 回答 0