los/losbase

Library with common classes for Los packages

2.5.6 2015-07-31 15:40 UTC

This package is auto-updated.

Last update: 2024-11-26 03:36:05 UTC


README

#LosBase Build Status Latest Stable Version Total Downloads Coverage Status Scrutinizer Code Quality SensioLabs Insight Dependency Status

Introduction

This module provides some utility classes for ZF2 projects and other LOS modules

Requirements

Instalation

Instalation can be done with composer ou manually

Installation with composer

For composer documentation, please refer to getcomposer.org.

  1. Enter your project directory

  2. Create or edit your composer.json file with following contents:

    {
        "minimum-stability": "dev",
        "require": {
            "los/losbase": "~2.5"
        }
    }
  3. Run php composer.phar install

  4. Open my/project/directory/config/application.config.php and add LosBase to your modules

Installation without composer

  1. Clone this module LosBase to your vendor directory
  2. Enable it in your config/application.config.php like the step 4 in the previous section.

Usage

CRUD

The module provides a console interface for easily creating a CRUD module:

php public/index.php create crud <modulename>

And it will create all necessary files and directories (config, controller, entity and service)

Controller

The AbstractCrudController provides some common operations for simples a CRUD:

  • list
  • view
  • add
  • edit
  • delete

Doctrine types

  • UtcDateTime: converts the datetime to UTC before saving to the database
  • BrDateTime: converts the datetime to UTC before saving to the database and to BRST (UTC-3) when loading from database
  • BrPrice: handles brazillian price format (1.234,56) for databae operations

Doctrine Entities

  • 3 Traits: Id, Created and Updated
  • AbstractEntity already using the 3 basic traits above

Module

  • AbstractModule providing getAutoloaderConfig and getConfig basic methods

Doctrine Entity Service

  • AbstractEntity provides and abstract service class that handles saves and deletes for doctirne entities
  • Util: getUserAgent and getIP
  • Uuid: static method for UUID creation

Doctirne validators

  • NoEntityExists asserts that no entity with the specified field already exists during add operation
  • NoOtherEntityExists asserts that no other entity with the specified field already exists during edit operation