У меня есть следующий schema.yml:
JosJeventsVevdetail:
connection: doctrine
tableName: jos_jevents_vevdetail
columns:
evdet_id:
type: integer(4)
fixed: false
unsigned: false
primary: true
autoincrement: true
rawdata:
type: string()
fixed: false
unsigned: false
primary: false
notnull: true
autoincrement: false
relations:
CustomField: { class: JosJeventsVevdetail, local: evdet_id, foreign: evdet_id, type: one, foreignType: many }
JosJevCustomfield:
connection: doctrine
tableName: jos_jev_customfields
columns:
id:
type: integer(4)
fixed: false
unsigned: false
primary: true
autoincrement: true
evdet_id:
type: integer(4)
fixed: false
unsigned: false
primary: false
default: '0'
notnull: true
autoincrement: false
name:
type: string(255)
fixed: false
unsigned: false
primary: false
default: ''
notnull: true
autoincrement: false
value:
type: string()
fixed: false
unsigned: false
primary: false
notnull: true
autoincrement: false
Т.е. в JosJeventsVevdetail есть много пар имя / значение, которые сопоставляются с одной записью.это с помощью метода таблицы (и некоторых других таблиц), например:
return $q->
innerJoin("$rootAlias.Event e")->
innerJoin("e.EventDetail ed")->
innerJoin("ed.CustomField cf")->
innerJoin("$rootAlias.JoomlaUser u")->
innerJoin("u.Person p")->
innerJoin("$rootAlias.Status s")->
innerJoin("$rootAlias.RsvpType rt")->
addWhere("cf.name=?",'preconExams')-> //this removed works,but query wrong
addSelect("$rootAlias.*, e.*, ed.*, s.*, rt.*, u.*, p.*, cf.*");
, но я получаю сообщение об ошибке «Неизвестное имя столбца».Когда я удаляю cf.name = 'preconExams', запрос выполняется, но jos_jev_customfields не включается в запрос.
Что-то не так со схемой?