matatirosoln/doctrine-filemaker-driver-bundle

Symfony bundle to implement one of the FileMaker Doctrine drivers

1.7.1 2021-10-19 22:17 UTC

README

A Symfony bundle to implement one of the FileMaker Doctrine drivers to allow the use of either FileMaker CWP API or the FileMaker Data API in a Symfony application.

Installation

Install through composer

composer require matatirosoln/doctrine-filemaker-driver-bundle

Important Note: You will also need to install the appropriate driver now that we have also released a driver for the Data API (this is a breaking change in v1.0. Originally the CWP driver was automatically installed by this bundle, however that doesn't now happen because you may not want it ;-).

If you wish to interact with FileMaker using the CWP PHP API

composer require matatirosoln/doctrine-filemaker-driver

Alternatively to use the Data API

composer require matatirosoln/doctrine-fm-data-api-driver

Configuration

For symfony less than v4.0 add the bundle to AppKernal.php

    new MSDev\DoctrineFileMakerDriverBundle\DoctrineFileMakerDriverBundle()

For Symfony v4+ add the bundle to bundles.php

    MSDev\DoctrineFileMakerDriverBundle\DoctrineFileMakerDriverBundle::class => ['all' => true],

Configure Doctrine to use the FileMaker driver. In your Doctrine configuration comment out

driver: xxxx

and replace it with

driver_class: MSDev\DoctrineFileMakerDriver\FMDriver

    or

driver_class: MSDev\DoctrineFMDataAPIDriver\FMDriver

If you wish to make use of the value lists functionality add the following to 'config.yaml' (or your chosen config file)

doctrine_file_maker_driver:
   valuelist_layout: 'ValueLists'

See the notes on 'conventions' with regard to creating entities for use with FileMaker in the Doctrine FileMaker driver readme.

Services

There are a number of useful services etc which this bundle adds to your project.

  1. Access to scripts within your FileMaker solution
  2. Interaction with containers
  3. Using valuelists through a twig extension.
  4. Storing translations in your FileMaker database.