Como substituir uma classe de modelo no PyroCMS (Laravel, PHP)?

Eu instaleiPyroCMS e estou ampliando-o para transformá-lo em um Sistema de Gerenciamento de Aprendizagem (LMS), onde apenas usuários logados podem visualizar as páginas, e as páginas também começam a ficar visíveis apenas um número variável de dias depois que um usuário se inscreve no curso.

(Ou seja, a Lição 1 do Módulo 1 pode ser desbloqueada e ficar visível imediatamente, mas a Lição 2 pode ser configurada para ficar oculta até 1 dia depois, e a Lição 3 pode ficar visível X dias depois, etc.)

Como consegui isso foi escrever um pacote Laravel com esta migração:

Schema::table('pages_pages', function (Blueprint $table) {
    $table->string('drip_delay')->nullable()->after('str_id');
});

Eu então criei umDrippablePagesServiceProvider classe com isso noboot() função:

$this->app->bind('Anomaly\PagesModule\Http\Controller\PagesController', 'me\DrippablePages\PagesController'); //https://laravel.com/docs/5.6/container#binding     

Eu projetei meu costumePagesController para mostrar uma visualização especial sempre que o usuário conectado estiver tentando acessar uma página muito cedo. Essa funcionalidade está funcionando totalmente bem.

Mas, em vez de editar odrip_delay campo diretamente no banco de dados como eu tenho feito, eu preferiria poder editar ao lado dos outros campos no URL / admin / pages / edit / 4.

Tenho certeza de que preciso substituir várias partes doPagesModule, como PageEntryFormSections (doc) E acho que tenho esse trabalho.

Mas, ao avançar com o Xdebug, vejo que o PageModel que é consultadoestá linha (via injeção de dependência? †) emedit() dentroHttp\Controller\Admin\PagesController ainda não mostra o meu novodrip_delay campo.

Como posso substituir o PageModel ou fazer o que for necessário para que ele mostre odrip_delay campo nesta visualização do painel do administrador?

† documentos do Laravel sobrerecipiente econtroladores implica isso.

questionAnswers(1)

yourAnswerToTheQuestion