если ваша модель \Demo\HelloWorld\Model\Customer
имеет таблицу за ней следует использовать завод, чтобы создать его экземпляр.
завод не должен быть создан, он будет генерироваться автоматически, но вы должны вводить его в конструкторе контроллера:
<?php
namespace Demo\HelloWorld\Controller;
class Index extends \Magento\Framework\App\Action\Action
{
protected $customerFactory;
public function __construct(
\Magento\Framework\App\Action\Context $context,
\Demo\HelloWorld\Model\CustomerFactory $customerFactory
) {
$this->customerFactory = $customerFactory;
parent::__construct($context);
}
public function execute()
{
$customer = $this->customerFactory->create();
//here you can call load or any other method
//$customer->load(2);
//then call your method
$customer->demo();
}
}