Здравствуйте!
Возник вопрос относительно некоторых нюансов в настройке RealUrl.
Необходимо получить ссылку вида:
http://site.ru/agencies/town/name_agencies.
Привожу пример кода, который есть на данный момент:
PHP код:
'fixedPostVars' => array(
'71' => array (
array (
'GETvar' => 'tx_extention_pi1[town_id]',
'lookUpTable' => array(
'table' => 'tx_extention_table',
'id_field' => 'uid',
'alias_field' => 'town_name',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
array (
'GETvar' => 'tx_extention_pi1[uid]',
'lookUpTable' => array(
'table' => 'tx_extention_table2',
'id_field' => 'uid',
'alias_field' => 'IFNULL(NULLIF(pathsegment,""), agency_title)',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
), // pid 71 end
), .
Результат его работы верный, но с тем учетом, что town_id всегда определено. В случае, если town_id не установлено имеем ссылку вида:
http://site.ru/agencies//name_agencies.
А необходима в таком случае:
http://site.ru/agencies/name_agencies.
Использовать 'noMatch' => 'bypass' нет смысла, так как он предназначен для 'valueMap' => array (). А 'valueDefault' => 'string' всего лишь задает параметр по умолчанию, ели другого не предусмотрено.
Отсюда вопрос: Есть ли какой-либо параметр, который предназначен для 'lookUpTable' => array() , но чтобы работал как 'noMatch' => 'bypass'? Т.е. чтобы переходил к следующему сегменту, если текущий не определен.