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

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).