A idéia é criar uma estrutura fácil de usar para iniciantes. Usaremos a classe Application () para carregar os módulos necessários, como routes , controllers , models . A classe modelo representa diretamente a tabela no banco de dados.
Essa estrutura está em desenvolvimento . Oferecerá arquitetura de padrões MVC com componentes e roteamento e ORM. As classes de modelo refletirão diretamente as tabelas de banco de dados.
No terminal, navegue até o diretório do seu projeto e execute o seguinte código:
composer require rforge/rforgeEm seguida, execute este comando para gerar um novo Autoloader
composer dump-autoload -o Ao concluir todas as etapas necessárias acima, você pode começar a criar um novo aplicativo. Este é um formato de amostra do seu index.php . Ligue para a linha require_once , como mostrado abaixo, para carregar a estrutura. Após essa linha, precisamos importar a classe Application por use RforgeApplication; .
require_once __DIR__ . " /vendor/autoload.php " ;
use RForge Application ;
use RForge Settings Config ;
Config:: setConnection ([
" host " => " 127.0.0.1 " ,
" user " => " root " ,
" pass " => "" ,
" charset " => " utf8 " ,
" driver " => " mysql "
]);
$ app = new Application ( " YourProjectNameSpace " );
$ app -> setTables ( ' Models \' ); //<-- Directory path to your models
$ app -> database ( ' bld ' ); // <-- DB Name
$ app -> start (); //<-- Start loading the configurationsNota : você deve definir a configuração primeiro antes de executar
$app->start(), ou ele usará a configuração padrão
Os modelos representam diretamente a estrutura do banco de dados. O Rforge rastreia as alterações em seus modelos e atualiza o banco de dados . A estrutura ainda não suporta o mapeamento do banco de dados relacional do modelo.
Para criar seu model , basta criar uma nova classe, atribua propriedades a essa classe. As propriedades da classe serão o nome das columns criadas no banco de dados. Para atribuir o tipo de dados, use a sintaxe JSDOC como mostrado abaixo:
class User{
/**
* @INT (10)
* @AUTO_INCREMENT
* @PRIMARY KEY
*/
public $ IDS ;
/**
* @Text
*/
public $ name ;
}
Essas classes contêm a implementação do método do banco de dados e devem ser herdadas por seus modelos.
class User extends Operations{
/**
* @INT (10)
* @AUTO_INCREMENT
* @PRIMARY KEY
*/
public $ IDS ;
/**
* @Text
*/
public $ name ;
}Alguns dos modelos retornam o valor ao modelo que o desencadeia. Enquanto outros métodos retornam o valor como uma matriz desse modelo. Atualmente, apenas dois métodos são suportados e mais métodos estarão disponíveis em breve.
Inicialize seu modelo e use os métodos abaixo:
$ user = new User (); // initialize the model with operations
$ user -> findByID ( 23 ); // invoke the method
echo $ user -> name ; //output => AlexObserve que você obtém diretamente o valor da sua consulta em seu modelo. Alguns métodos retornam uma matriz do modelo que desencadeou o método , enquanto outros retornam o valor diretamente para a própria classe
Você deve colocar esse modelo em uma pasta separada e deve estar na diretora mais importante. Como o filecrawler também encontrará outras classes nesses diretórios.
setTables na classe de aplicação.