добавить посреднический слой абстракции на Cake \ Orm \ Table - PullRequest
0 голосов
/ 16 октября 2019

Аргументация за моей головой:

  • желаемое пока не поддерживается cakephp
  • желаемый дБ - это новый дБ (для меня), поэтомуМой план состоит в том, чтобы изучить его и разработать для него какой-то драйвер.
  • возможность использовать эту базу данных высока в моем будущем проекте, если бы это был драйвер или плагин, мне было бы легкокогда он выйдет, это может быть легко для пользователя тортов.

Я просто пытаюсь создать класс Table под моим пространством имен, например так:

// Model/Table/Table.php
namespace Enter\Rql;
  require_once(ROOT. "/vendor/danielmewes/php-rql/rdb/rdb.php");
  use r;
  class Table extends \Cake\ORM\Table
  {
    private $conn= NULL;
    private $db= NULL;

    function initialize(array $config)
    {
      $this->conn= r\connect('localhost');
      $this->setup();
    }

    public function setup()
    {
    }

    public function insert(array $data)
    {

// Model/Table/StudentsTable.php
  require_once 'Table.php';
  use Enter\Rql\Table;
  class StudentsTable extends Table
  {
    // function initialize(array $config)
    // {
    // }

  }

, но в результате получается, чтометод вставки недоступен в контроллере.

Любая подсказка или предложение приветствуется.

1 Ответ

0 голосов
/ 20 октября 2019

Вам необходимо реализовать свой собственный плагин источника данных.

https://ravendb.net/ (при условии, что это именно то, что вам нужно) - это система NoSQL db. Так что вы можете попробовать взглянуть на https://github.com/tiaguinho/mongodb-cakephp3 и посмотреть, насколько он похож. Однако создание полного адаптера источника данных - трудоемкая задача.

Вы, безусловно, хотите взглянуть на существующие реализации. Вы также можете проверить плагин эластичного поиска, чтобы получить дополнительные сведения о том, как это сделать.

...