Открыть список
Как стать автором
Обновить

Комментарии 17

1. Назвать их по-разному. У вас они все одинаковые :)
2. Ну если у Вас один проект, то ничего страшного. но если много и постоянно обновляете из SVN — один удобнее.

Кстати, а зачем на Хабре перепечатка мануала с сайта Симфони?
Мануал читаю, но перепечатывать не собирался… Видно так получилось… А так вообще очень доволен фреймворком.

Пробывал именить «foreignAlias: tbltransaction»->«foreignAlias: tbltransaction1» и «Tblaccount:»->«Tblaccount1:». В первом случае так же создается один FK, во втором ничего. Что в именно нужно изменить в имени?
foreignAlias — это название foreign модели. У Вас проблема в том, что все связи имеют одинаковые названия (именно сами связи) — Tblaccount, Tblaccount, Tblaccount. Вот к ним и добавляйте постфиксы 1,2,3
relations:
Tblaccount1:
foreignAlias: tbltransaction
local: intinaccountid
foreign: intaccountid
type: one
foreignType: many
Tblaccount2:
foreignAlias: tbltransaction
local: intoutaccountid
foreign: intaccountid
type: one
foreignType: many
Tblaccount3:
foreignAlias: tbltransaction
local: intfeeaccountid
foreign: intaccountid
type: one
foreignType: many
Пробывал. В таком случае вообще не создается FK. =(
foreignAlias указывает, как будет называться ссылка на текущую модель в той, на которую ссылаемся.
Я это и имел в виду. Извиняюсь за косоязычность :-)
В вашем случае класс нужно указывать явно (по всей видимости). Также было бы неплохо получить описание отношений словами, а не в виде схемы.
relations:
    IntInAccount:
     class:  Tblaccount
     foreignAlias: tbltransaction
     local: intinaccountid
     foreign: intaccountid
     type: one
     foreignType: many
    IntOutaccount:
     class:  Tblaccount
     foreignAlias: tbltransaction
     local: intoutaccountid
     foreign: intaccountid
     type: one
     foreignType: many
    IntFeeAccount:
     class:  Tblaccount
     foreignAlias: tbltransaction
     local: intfeeaccountid
     foreign: intaccountid
     type: one
     foreignType: many

а зачем везде указывать foreignAlias: tbltransaction?
Я только учусь… Приду домой, попробую что вы написали. Если получиться, то не зра получил 2-а минуса =)
Ничего страшного, сам не так давно был в аналогичной ситуации. Насилу разобрался, что зачем.
Спасибо за совет! Все получилось!
Извините за занудство, но всё же. Вы понимаете назначение параметра foreignAlias?
не совсем.
Я так и подумал. foreignAlias — название отношения в foreign модели. То есть, дёрнув $account-><что_там_написано_в_foreignAlias>, мы получим Doctrine_Collection, состоящую из элементов описываемого класса.
В вашем случае отношениям к одному и тому же классу (tblAccount) присвоены одинаковые foreignAlias (tbltransaction). По всей видимости, Doctrine не ругается на эти извращения, но тем не менее это нонсенс — обращаться к разным коллекциям по одному псевдониму. В общем, рекомендую заглянуть в базовые классы как это модели, так и тех, на которые ссылаетесь — очень познавательно :)
Спасибо за подробный ответ.
Я держу symfony в PEAR. И обновляю там же.
Далее нужно настроить apache (/etc/apache2/sites-enabled/000-default)
1. У меня в /etc/apache2/sites-available лежит выключенный конфиг symfony-default аналогичного содержания, который я по мере необходимости копирую и правлю. Потому что
2. Сайт default править не совсем правильно — он переписывается при каждом апгрейде апача. Приходится мергать руками, а интерфейс для этого неудобен; в общем, так проще. И да, почитайте man a2ensite и a2dissite
Спасибо за совет.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.