2015-02-13 3 views
0

В настоящее время я использую typo3-neos для моего проекта, и у меня есть эта проблема. я пытаюсь сделать свой собственный узел, как это в .yaml файлКак заполнить выбранные параметры из пользовательской базы данных в .yaml-файлах с помощью typo3-neos?

'TYPO3.Designs:SomeItem': 
    superTypes: 
    - 'TYPO3.Neos:Content' 
    ui: 
    group: 'structure' 
    label: 'Some Item' 
    icon: 'icon-columns' 
    inlineEditable: true 
    inspector: 
     groups: 
     document: 
      label: 'Item options' 
      position: 1 
    properties: 
    someitem: 
    type: string 
    defaultValue: 'item1' 
    ui: 
     label: 'Alignment' 
     reloadIfChanged: TRUE 
     inspector: 
     group: 'document' 
     editor: 'TYPO3.Neos/Inspector/Editors/SelectBoxEditor' 
     editorOptions: 
      values: 
      item1: 
       label: 'item1' 
      item2: 
       label: 'item2' 
      right: 
       label: 'item3' 

в этой части

editorOptions: 
values: 
    item1: 
    label: 'item1' 
    item2: 
    label: 'item2' 
    right: 
    label: 'item3' 

я хочу взять данные из базы данных, так что если в базе данных есть 10 пунктов, то это будет в редакторе появляется 10 параметров.

как я могу это сделать? любая помощь приветствуется, спасибо

ответ

1

может быть код, как это:

добавить это в вашей модели

<?php 
namespace Acme\YourPackage\DataSource; 

use TYPO3\Neos\Service\DataSource\AbstractDataSource; 
use TYPO3\TYPO3CR\Domain\Model\NodeInterface; 

class TestDataSource extends AbstractDataSource { 

     /** 
     * @var string 
     */ 
     static protected $identifier = 'acme-yourpackage-test'; 

     /** 
     * Get data 
     * 
     * @param NodeInterface $node The node that is currently edited (optional) 
     * @param array $arguments Additional arguments (key/value) 
     * @return array JSON serializable data 
     */ 
     public function getData(NodeInterface $node = NULL, array $arguments) { 
       return isset($arguments['integers']) ? array(1, 2, 3) : array('a', 'b', 'c'); 
     } 

} 

и это настройки YAML:

questions: 
    ui: 
    inspector: 
     editor: 'Content/Inspector/Editors/SelectBoxEditor' 
     editorOptions: 
     dataSourceIdentifier: 'questions' 
     # alternatively using a custom uri: 
     # dataSourceUri: 'custom-route/end-point' 

получил это ссылки с 'soee' http://docs.typo3.org/neos/TYPO3NeosDocumentation/IntegratorGuide/ContentStructure.html