В настоящее время разрабатывается приложение с использованием новейшей версии Symfony, полученной через PEAR. Это моя точная конфигурация схемы
propel:
user:
id:
name: { type: varchar(255), required: true }
level: { type: integer, required: true, default: 1 }
created_at:
post:
id:
title: { type: varchar(255), required: true }
post: { type: longvarchar, required: true }
user_id:
created_at:
updated_at:
comment:
id:
relation: integer
comment: { type: varchar(300), required: true }
nick: { type: varchar(100), required: true }
created_at:
updated_at:
Проснувшиеся и осведомленные о вас, вероятно, заметили, что user_id в посте является внешним ключом для пользователя. Согласно определенному руководству; [quote title = Quote:] (столбцы, заканчивающиеся на _id, считаются внешними ключами, и связанная таблица автоматически определяется в соответствии с первой частью имени столбца). [/ quote]
Всякий раз, когда я пытаюсь создать ЛЮБЫЕ фильтры или ФОРМЫ (build-filters / build-forms / build-all), появляется следующее сообщение об ошибке.
>> propel generating form classes
-----> Cannot fetch TableMap for undefined table: user. Make sure you have the static MapBuilder registration code after your peer stub class definition. <------
[?php
/**
* Post form base class.
*
* @package ##PROJECT_NAME##
* @subpackage form
* @author ##AUTHOR_NAME##
* @version SVN: $Id: sfPropelFormGeneratedTemplate.php 16976 2009-04-04 12:47:44Z fabien $
*/
class BasePostForm extends BaseFormPropel
{
public function setup()
{
$this->setWidgets(array(
'id' => new sfWidgetFormInputHidden(),
'title' => new sfWidgetFormInput(),
'post' => new sfWidgetFormTextarea(),
'user_id' => new sfWidgetFormPropelChoice(
Я также пытался определить foreignTable и foreignReference в своей схеме, но безуспешно. Это свежий Symfony-проект, созданный только для устранения этой ошибки. Я пытался использовать имена единственного и множественного числа для моих таблиц. Я делаю что-то ужасно неправильно, или это серьезная ошибка? Цени любой вклад, это сводит меня с ума!
У меня есть ветка форума в официальном сообществе Symfony, здесь: http://forum.symfony -project.org / index.php / m / 77979 / - были некоторые предложения (например, как я забыл использовать тильда и этот «пользователь» является предопределенным классом, но проблемы остаются решены [отредактировано] на данный момент.
Одно бесплатное объятие в Интернете, основные реквизиты и бесплатный космический челнок для могучей души, которая придумала решение! (отказ от ответственности: на самом деле нет бесплатного космического челнока)