Symfony 1.2.4: Build-All Bug? Cannot fetch TableMap…


February 19th, 2009

So, I have been recently trying to get back into Symfony. I had taken a break from it for a while to concentrate on Music Review Zone.

I bought a domain recently that I’d like to develop a Symfony application for and since my current knowledge base is with Symfony 1.0 – I thought I’d use it. Then I noticed the benefits of Symfony 1.2.4 and couldn’t pass it up.

So I started creating my project in the usual way:

php symfony init-project <name of project>

php symfony init-app front

I then setup my databases.yml file and completed my schema.yml file. I then ran:

php symfony propel:build-all

… and got the following output:

symfony propel:build-all
>> schema    converting "C:/wamp/vhosts/private/config/schema.yml" to XML
>> schema    putting C:/wamp/vhosts/private/config/generated-schema.xml
>> propel    Running "om" phing task
>> file-     C:/wamp/vhosts/private/config/generated-schema.xml
>> file-     C:/wamp/vhosts/private/co...enerated-schema-transformed.xml
>> autoload  reloading autoloading

  Phing was run before and used many custom classes that might conflict with
  your model classes. In case of errors try running "propel:build-forms" and
  "propel:build-filters" alone. This is due to a PHP limitation that cannot be
  fixed in symfony.

>> propel    generating form classes

  Cannot fetch TableMap for undefined table: location.  Make sure you have the  
static MapBuilder registration code after your peer stub class definition.

[?php

/**
 * User form base class.
 *
 * @package    ##PROJECT_NAME##
 * @subpackage form
 * @author     ##AUTHOR_NAME##
 * @version    SVN: $Id: sfPropelFormGeneratedTemplate.php 12815 2008-11-09 
10:43:58Z fabien $
 */
class BaseUserForm extends BaseFormPropel
{
  public function setup()
  {
    $this->setWidgets(array(
      'id'                           => new sfWidgetFormInputHidden(),
      'username'                     => new sfWidgetFormInput(),
      'location_id'                  => new sfWidgetFormPropelChoice(

I am beat as to why this is occurring.

My schema.yml file creates a user and location table, among others. Each user has a location which I state in the YAML as :


user:
    _attributes    { phpName: User }
    id:            ~
    username:      { type: varchar(50), required: true, index: unique }
    location_id:   ~

I also define the location table as:


location:
    _attributes         { phpName: Location }
    id:                 ~
    name:               varchar(50)
    created_at:         ~

So I do not know why ‘symfony propel:build-all ‘ is failing.

When I run each of the commands that makes up the ‘build-all’ option – each succeeds. i.e:

  • build-schema
  • build-sql
  • build-model
  • build-filters
  • build-forms

So is this a bug or are your fresh eyes noticing something that I am missing?

Tags: , ,

Categories: Programming, symfony

Symfony 1.2.4: Build-All Bug? Cannot fetch TableMap…


August 27th, 2008

So, I have been recently trying to get back into Symfony. I had taken a break from it for a while to concentrate on Music Review Zone.

I bought a domain recently that I’d like to develop a Symfony application for and since my current knowledge base is with Symfony 1.0 – I thought I’d use it. Then I noticed the benefits of Symfony 1.2.4  and couldn’t pass it up.

So I started creating my project in the usual way:

php symfony init-project <name of project>

php symfony init-app front

I then setup my databases.yml file and completed my schema.yml file. I then ran:

php symfony propel:build-all

… and got the following output:

 

symfony propel:build-all
>> schema    converting "C:/wamp/vhosts/private/config/schema.yml" to XML
>> schema    putting C:/wamp/vhosts/private/config/generated-schema.xml
>> propel    Running "om" phing task
>> file-     C:/wamp/vhosts/private/config/generated-schema.xml
>> file-     C:/wamp/vhosts/private/co...enerated-schema-transformed.xml
>> autoload  reloading autoloading

  Phing was run before and used many custom classes that might conflict with
  your model classes. In case of errors try running "propel:build-forms" and
  "propel:build-filters" alone. This is due to a PHP limitation that cannot be
  fixed in symfony.

>> propel    generating form classes

  Cannot fetch TableMap for undefined table: location.  Make sure you have the 
static MapBuilder registration code after your peer stub class definition.

[?php

/**
 * User form base class.
 *
 * @package    ##PROJECT_NAME##
 * @subpackage form
 * @author     ##AUTHOR_NAME##
 * @version    SVN: $Id: sfPropelFormGeneratedTemplate.php 12815 2008-11-09 
10:43:58Z fabien $
 */
class BaseUserForm extends BaseFormPropel
{
  public function setup()
  {
    $this->setWidgets(array(
      'id'                           => new sfWidgetFormInputHidden(),
      'username'                     => new sfWidgetFormInput(),
      'location_id'                  => new sfWidgetFormPropelChoice(

I am beat as to why this is occurring.

My schema.yml file creates a user and location table, among others. Each user has a location which I state in the YAML as :


user:
    _attributes    { phpName: User }
    id:            ~
    username:      { type: varchar(50), required: true, index: unique }
    location_id:   ~

I also define the location table as:


location:
    _attributes         { phpName: Location }
    id:                 ~
    name:               varchar(50)
    created_at:         ~

So I do not know why ‘symfony propel:build-all ‘ is failing.

When I run each of the commands that makes up the ‘build-all’ option – each succeeds. i.e:

  • build-schema
  • build-sql
  • build-model
  • build-filters
  • build-forms

So is this a bug or are your fresh eyes noticing something that I am missing?

Tags: , ,

Categories: Programming, symfony

"Thought leadership is how winners are differentiated in business."