PDA

Zobacz pełną wersję : J! 3.4.1 zapisuje ale nie ładuje tagów do widoku edycji pojedyńczego itemu



258356@gmail.com
18-04-2015, 11:51
Tworzę własny komponent do joomli 3.4.1 i chcę podpiąć pod niego komponent tagów wbudowany w J!. Opieram się na https://docs.joomla.org/J3.x:Using_Tags_in_an_Extension i prawie wszystko jest ok lecz pojawia się jeden problem.

Tworzę nowy content type za pomocą zapytania SQL

INSERT INTO `xxxxxxx`.`qvmph_content_types` (`type_id`, `type_title`, `type_alias`, `table`, `rules`, `field_mappings`, `router`, `content_history_options`) VALUES (NULL, 'Single Item', 'com_simple.item', '{"special":{"dbtable":"#__simple","key":"id","type":"Item","prefix":"SimpleTable"}}', '', '{"common":{"core_content_item_id":"id","core_title":"column1","core_alias":"column2","core_body":"column3","core_state":"published"}}', 'SimpleHelperRoute::getItemRoute', '{"formFile":"administrator\\\\/components\\\\/com_simple\\\\/models\\\\/forms\\\\/item.xml"}');

Dodaje do component's table class:

JObserverMapper::addObserverClassToClass('JTableOb serverTags', 'SimpleTableItem', array('typeAlias' => 'com_simple.item'));

Oraz w xmlu definiuje nowy field dla formularza

<field name="tags" type="tag"
label="JTAG" description="JTAG_DESC"
class="inputbox span12 small" multiple="true"
>
</field>

Wszystko wydaje się działać poprawnie: dodając nowy item mogę wybrać tagi, po zapisie dodają się nowe rekordy w tabeli #_contentitem_tag_map, tagi można pobrać na froncie lecz po zapisanie czy edycji itemu pole tagów pozostaje puste tak jakby J! nie pobierała tagów do widoku edycji pojedyńczego itemu. Podczas ponownego wyboru tagów (z pustego pola) stare rekordy w tabeli #_contentitem_tag_map są usuwane lub odpowiednio modyfikowane.