Download the PHP package craftyshadow/propel-equalnest-behavior without Composer
On this page you can find all versions of the php package craftyshadow/propel-equalnest-behavior. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download craftyshadow/propel-equalnest-behavior
More information about craftyshadow/propel-equalnest-behavior
Files in craftyshadow/propel-equalnest-behavior
Package propel-equalnest-behavior
Short Description This behavior provides a way to define relations between objects that have equal hierarchy (friendship).
License MIT
Informations about the package propel-equalnest-behavior
EqualNestBehavior
The EqualNestBehavior is inspired by Doctrine's Equal Nest Relations implementation, and provides a way to define relations between objects that have equal hierarchy - think about a person and his friends.
Requirements
This behavior requires Propel >= 1.6.0.
Installation
Get the code by cloning this repository, or by using Composer (recommended):
Then, if you don't use Composer, or an autoloader in your application, add the
following configuration to your build.properties
or propel.ini
file:
Note:
vendor.craftyshadow.propel-equalnest-behavior.src.EqualNestBehavior
is the path to access theEqualNestBehavior
class in "dot-path" notation.
Then declare the behavior in your schema.xml
:
Setup with symfony 1.4
Copy the behavior to lib/vendor/equal_nest_behavior
and then register the
behavior class by adding the following to the bottom of the config/propel.ini
file:
Then in your schema.yml
:
Usage
Continuing with the example above, here is how you would use the Person
object
to define Friend
relationships:
The most important thing to remember is that all changes are committed to the
database only after you call the ->save()
method!
Also, keep in mind that relations are non-transitional:
If you need this you will have to manually implement it.
ActiveRecord API
ActiveQuery API
Parameters
Propel pluralizer
This behavior makes use of the Propel pluralizer when generating the relational
interface. Make sure to always use the StandardEnglishPluralizer
bundled with Propel 1.6
and up whenever possible (eg when you are starting a new project).
To use the better pluralizer add the following to your build.properties
(for
standalone Propel) or propel.ini
(for symfony + Propel):
Running tests
Install dependencies:
php composer.phar install --dev
Run the test suite:
phpunit
License
This behavior is released under the MIT License. See the bundled LICENSE file for details.