Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Разработка расширений / TYPO3 extension development (http://forum.typo3.ru/forumdisplay.php?f=38)
-   -   Помогите разобраться $TCA мастер подстановки (http://forum.typo3.ru/showthread.php?t=9802)

brd 21.11.2011 20:29

Помогите разобраться $TCA мастер подстановки
 
вот такой код:
Код:

'branch_id' => array (               
                        'exclude' => 1,               
                        'label' => 'LLL:EXT:bmr_register/locallang_db.xml:tx_bmrregister_main.branch_id',               
                        'config' => Array (
                                'type' => 'group',
                                'internal_type' => 'db',
                                        'allowed' => 'tx_bmrregister_branch',
                                        'MM' => 'tx_bmrregister_main_branch_id_mm',
                                'size' => '3',
                                'autoSizeMax' => 10,
                                'maxitems' => '200',
                                'minitems' => '0',
                                'show_thumbs' => '7',
                                'wizards' => array(
                                        'suggest' => array(
                                                'type' => 'suggest'
                                        )
                                )
                        )

Поиск по таблице не осуществляется не могу понять по какой причине, вроде все по манула сделано. Пребывал вместо tx_bmrregister_branch подставлять таблицу страниц(pages), все ищет по страница, в этой (tx_bmrregister_branch) не хочет. Может есть какие тонкости, типа поле в БД должно быть определенно типа или названия?

Андрей Аксенов 22.11.2011 13:01

Может закралась обычная ошибка по невнимательности? Например в названии таблицы... ну или как в приведенном примере:
Цитата:

'show_thumbs' => '7',
Почему 7? Это же тип boolean...
Ну и синтаксис проверить... (в этом куске одной скобки не хвататет...)
Должно быть как-то так:
Цитата:

'branch_id' => array (
'exclude' => 1,
'label' => 'LLL:EXT:bmr_register/locallang_db.xml:tx_bmrregister_main.branch_id',
'config' => Array (
'type' => 'group',
'internal_type' => 'db',
'allowed' => 'tx_bmrregister_branch',
'MM' => 'tx_bmrregister_main_branch_id_mm',
'size' => '3',
'autoSizeMax' => 10,
'maxitems' => '200',
'minitems' => '0',
'show_thumbs' => '1',
'wizards' => array(
'suggest' => array(
'type' => 'suggest'
)
)
)
),
И под каким пользователем осуществляется доступ? Просто установлено 'exclude' => 1, то есть доступ нужно специально разрешать, либо пользователь должен быть администратором...
Ну и проверьте обязательный ключ 'label' => 'LLL:EXT:bmr_register/locallang_db.xml:tx_bmrregister_main.branch_id' - правильно ли указан... (название поля в интерфейсе).
Пока больше ничего в голову не приходит...

brd 22.11.2011 14:27

Спасибо за ошибки
 
Цитата:

Сообщение от Андрей Аксенов (Сообщение 32436)
Может закралась обычная ошибка по невнимательности? Например в названии таблицы... ну или как в приведенном примере:

Почему 7? Это же тип boolean...
Ну и синтаксис проверить... (в этом куске одной скобки не хвататет...)
Должно быть как-то так:


И под каким пользователем осуществляется доступ? Просто установлено 'exclude' => 1, то есть доступ нужно специально разрешать, либо пользователь должен быть администратором...
Ну и проверьте обязательный ключ 'label' => 'LLL:EXT:bmr_register/locallang_db.xml:tx_bmrregister_main.branch_id' - правильно ли указан... (название поля в интерфейсе).
Пока больше ничего в голову не приходит...

Исправил но ошибка была не в этом, а в параметрах поиска! Оно просто искало в столбце uid, а нужно в поле title, теперь не могу найти как указть скакого поля брать значения для поиска:( кто-то знает?

dmartynenko 22.11.2011 16:50

Сравните конфигурацию в ext_tables.php для своей таблицы и pages (есть в исходниках ядра).

Возможно это одно из полей "label" или "label_alt".

brd 22.11.2011 17:41

Цитата:

Сообщение от dmartynenko (Сообщение 32438)
Сравните конфигурацию в ext_tables.php для своей таблицы и pages (есть в исходниках ядра).

Возможно это одно из полей "label" или "label_alt".

Насколько я понял это не только с таблицей pages, еще tt_news... их много с который селект подтягивает нужное поля а вот именно с моей таблицы чето выводит только uid ), поэтому я думаю что может есть какие-то поля для этого или определенный тип нужно указывать или еще какие-то тонкости

dmartynenko 22.11.2011 17:53

Значит в tt_news, pages и других правильно заданы параметры таблицы, а у вас что-то упущено.
Приведите содержание вашего файла ext_tables.php

dmartynenko 22.11.2011 18:00

Как я и думал вам нужно корректно задать label и label_alt:

http://www.t3node.com/blog/using-the...s-of-typo3-43/
и там ссылка на доку TCA
http://typo3.org/documentation/docum...4/2/#id4240310

PS: это первая ссылка в гугле по словам "typo3 suggest wizard". Причем это сочетание слов гугл предлагает через autosuggest.

brd 22.11.2011 18:05

Код
 
Вложений: 1
Код:

<?php
if (!defined('TYPO3_MODE')) {
        die ('Access denied.');
}

t3lib_extMgm::allowTableOnStandardPages('tx_bmrtags');


t3lib_extMgm::addToInsertRecords('tx_bmrtags');

$TCA['tx_bmrtags'] = array (
        'ctrl' => array (
                'title'    => 'LLL:EXT:bmr_tags/locallang_db.xml:tx_bmrtags',               
                'label'    => 'title',       
                'tstamp'    => 'tstamp',
                'crdate'    => 'crdate',
                'cruser_id' => 'cruser_id',
                'default_sortby' => 'ORDER BY crdate',       
                'delete' => 'deleted',       
                'enablecolumns' => array (               
                        'disabled' => 'hidden',
                ),
                'dynamicConfigFile' => t3lib_extMgm::extPath($_EXTKEY).'tca.php',
                'iconfile'          => t3lib_extMgm::extRelPath($_EXTKEY).'icon_tx_bmrtags.gif',
        ),
);
?>

вот результат Вложение 394

dmartynenko 22.11.2011 18:21

У вас этот код был изначально или вы его потом меняли?
'label' => 'title',

Если меняли, то может просто кэши не почистили? В таком варианте должно работать:
'label' => 'title',
'label_alt' => 'title', // на всякий случай

dmartynenko 22.11.2011 18:27

И еще, в первом коде у вас используется таблица tx_bmrregister_branch.
В последнем коде приведен конфиг от другой таблицы tx_bmrtags. А в ошибочно размещенном коде был как раз не то значение, что нужно для label:

Код:

$TCA['tx_bmrregister_branch'] = array (
        'ctrl' => array (
                'title'    => 'LLL:EXT:bmr_register/locallang_db.xml:tx_bmrregister_branch',         
                'label'    => 'uid',



Часовой пояс GMT +4, время: 00:52.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot