Yform: Selectdefinition (kommasepariert) auch im Modul auszulesen, wenn ich dieselben Werte wie im Backend angezeigt bekommen möchte
habe ich in YFORM eine Möglichkeit, die Selectdefinition (kommasepariert) auch im Modul auszulesen, wenn ich dieselben Werte wie im Backend angezeigt bekommen möchte? monatlich=monthly,unregelmäßig=occasional Hier im Beispiel steht in der DB "monthly", ich möchte aber gerne das "monatlich" aus der Definition haben. Geht das?
rex_yform_manager_table::get('my_table')->getValueField('my_field')->getElement('options')
ich lese es aus dem Cache! :slightly_smiling_face:
Mir hat übrigens noch ein rex::getTablePrefix() geholfen, um das sauber zu machen, also
rex_yform_manager_table::get(rex::getTablePrefix().'my_table')->getValueField('my_field')->getElement('options')
Um den erhaltenen String nun verwertbar in ein Array umzuformen, bringt YFORM auch eine Funktion mit:
rex_yform_value_abstract::getArrayFromString((rex_yform_manager_table::get(rex::getTablePrefix().rex::getProperty('current_table'))->getValueField('my_field')->getElement('options')));
Nochmal angepasst, da getArrayFromString nicht mehr statisch aufgerufen werden sollte. (YForm Version: 3.1.1)
Für das neue Choice Feld würde der Code so aussehen:
$choice = new rex_yform_value_choice();
$options = $choice->getArrayFromString((rex_yform_manager_table::get(rex::getTable('current_table'))->getValueField('my_field')->getElement('choices')));