koriym / db-app-package
A database application package for BEAR.Sunday
Installs: 3 206
Dependents: 0
Suggesters: 0
Security: 0
Stars: 5
Watchers: 3
Forks: 2
Open Issues: 0
Requires
- php: >=7.0.0
- bear/aura-router-module: ^1.2
- bear/package: ^1.7
- koriym/now: ^1.0
- koriym/query-locator: ^1.3
- ray/aura-sql-module: ^1.6
- ray/query-module: ^0.2.0
- robmorgan/phinx: ^0.9
Requires (Dev)
- koriym/dev-pdo-statement: ^0.1
- phpunit/dbunit: ^2.0
README
This package contains the following libraries.
- Aura.Router v2 A web router implementation for PHP.
- Aura.Sql v2 Adapters for SQL database access
- Aura.SqlQuery v2 Independent query builders for MySQL, PostgreSQL, SQLite, and Microsoft SQL Server.
- Phinx Database migrations
- Koriym.QueryLocator SQL locator
- Koriym.DevPdoDtatement PDOStatement for query inspection
Installation
Composer Intall
composer create-project bear/skeleton {project-path}
Created project in my-project
> BEAR\Skeleton\Installer::preInstall
What is the vendor name ?
(MyVendor):
What is the project name ?
(MyProject):
cd {project-path}
composer require koriym/db-app-package
php vendor/koriym/db-app-package/bin/install.php
Module Install
Replace PackageModule
with DbAppPackage
in your AppModule.
use josegonzalez\Dotenv\Loader as Dotenv;
use Koriym\DbAppPackage\DbAppPackage; // add this line
use Ray\Di\AbstractModule;
class AppModule extends AbstractModule
{
/**
* {@inheritdoc}
*/
protected function configure()
{
Dotenv::load([
'filepath' => dirname(dirname(__DIR__)) . '/.env',
'toEnv' => true
]);
// add this line
$this->install(new DbAppPackage($_ENV['DB_DSN'], $_ENV['DB_USER'], $_ENV['DB_PASS'], $_ENV['DB_READ']));
}
}
Configuration
Database
.env
DB_DSN=mysql:host=localhost;dbname=task
DB_USER=root
DB_PASS=
DB_READ=
Create databse
php bin/create_db.php
Database migrations
Create migration.
php vendor/bin/phinx create -c var/db/phinx.php MyNewMigration
Perform migration.
php vendor/bin/phinx migrate -c var/db/phinx.php
see more at Phinx.
Route
Edit var/conf/aura.route.php
.
<?php /** @var $router \BEAR\Package\Provide\Router\AuraRoute */ $router->route('/task', '/task/{id}');