J'ai créé un champ personnalisé comme ci-dessous
class JFormFieldPaddyStatus extends JFormFieldList {
protected $type = 'paddystatus';
public function getOptions($id='') {
$options = array();
$options[0] = 'Raw';
$options[1] = 'Dried';
$options[2] = 'Grind';
$options[3] = 'Ready';
return $options;
}
}
Dans la base de données, il stocke les valeurs sous la forme 0, 1, etc.
Au moment où je montre le statut comme ci-dessous
<td><?php echo $row->status; ?></td>
Vous devez créer une nouvelle instance de votre classe de champs et obtenir des options. Alors echo
statut par key
de $options
array
.
Les 10 premières lignes ne sont nécessaires que si les classes ne sont pas encore chargées.
<?php
// Import JFormHelper if not exist
jimport('joomla.form.helper');
// Add your field path
JFormHelper::addFieldPath(JPATH_COMPONENT . '/models/fields');
// Load JFormFieldPaddyStatus class
JFormHelper::loadFieldClass('PaddyStatus');
// Classes loaded
// New instance
$PaddyStatus = new JFormFieldPaddyStatus();
// Get options
$options = $PaddyStatus->getOptions();
// Show status
<td><?php echo $options[$row->status]; ?></td>