Kris Wallsmith 29360a0eea Removed old resources array property from DI extension classes. 14 tahun lalu
..
Command f79e23ffb5 Removed all those spaces after @author that were bothering me so… 14 tahun lalu
DependencyInjection 29360a0eea Removed old resources array property from DI extension classes. 14 tahun lalu
Logger f79e23ffb5 Removed all those spaces after @author that were bothering me so… 14 tahun lalu
Resources 6213fdefb9 renamed Symfony\Framework to Symfony\Bundle 15 tahun lalu
Tests bf82cf42dd renamed Symfony\Components to Symfony\Component 15 tahun lalu
PropelBundle.php d657adbfa2 removed Symfony\Framework 14 tahun lalu
README 6213fdefb9 renamed Symfony\Framework to Symfony\Bundle 15 tahun lalu

README

Propel Bundle
=============

This is a (work in progress) implementation of Propel in Symfony 2.

Currently supports:

* Generation of model classes based on an XML schema (not YAML) placed under `BundleName/Resources/*schema.xml`.
* Runtime autoloading of Propel and generated classes
* Propel runtime initialization through the XML configuration.

Installation
------------

* Checkout Propel and Phing in the src/vendor/ directory

> cd sandbox/src/vendor
> svn checkout http://svn.propelorm.org/branches/1.5 propel
> svn checkout http://phing.mirror.svn.symfony-project.com/tags/2.3.3/classes/phing phing

Sample Configuration
--------------------

### Project configuration

# in sandbox/hello/config/config.yml
propel.config:
path: %kernel.root_dir%/../src/vendor/propel
phing_path: %kernel.root_dir%/../src/vendor/phing

propel.dbal:
driver: mysql
user: root
password: null
dsn: mysql:host=localhost;dbname=test
options: {}
# default_connection: default
# connections:
# default:
# driver: mysql
# user: root
# password: null
# dsn: mysql:host=localhost;dbname=test
# options: {}

### Sample Schema

Place the following schema in src/Application/HelloBundle/Resources/config/schema.xml:






















### Build Process

Call the application console with the `propel:build` task:

> ./hello/console propel:build --classes

### Use The Model Classes

Use the Model classes as any other class in Symfony. Just use the correct namespace, and Symfony will autoload them:

class HelloController extends Controller
{
public function indexAction($name)
{
$author = new \Application\HelloBundle\Model\Author();
$author->setFirstName($name);
$author->save();

return $this->render('HelloBundle:Hello:index', array('name' => $name, 'author' => $author));
}
}


Known Problems
--------------

Your application must not be in a path including dots in directory names (i.e. '/Users/me/symfony/2.0/sandbox/' fails).