web-dev-qa-db-ja.com

IDでJformFieldList値を取得する方法

以下のようにカスタムフィールドを作成しました

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;
  }
}

データベースには、0、1などの値が格納されます。ステータスを表示するときに、値の代わりに対応する名前を表示します。

現時点では以下のようにステータスを表示しています

<td><?php echo $row->status; ?></td>
2
Malaiselvan

フィールドクラスの新しいインスタンスを作成し、オプションを取得する必要があります。次に、echoステータスkey/$optionsarray

最初の10行は、クラスをまだロードしていない場合にのみ必要です。

<?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>
2
Rene Korss