編集:
私の元の投稿は問題の下部に含まれていますが、非常にあいまいだったので、自分自身をより明確にするために更新しようとしています。私のサイトには、ユーザーがビジネスのレビューを送信するセクションがあります。そのようなフィールドの1つで、バータブがあるかどうかを選択します。なし、飲み物、食べ物、および両方のオプションが与えられます。オプションを送信すると、データベースにfloat値として保存され、Noneは0、Drinksは1、Foodは2、Bothは3としてデータベースに保存されます。次に、これらすべての値を1つのフィールドに平均して表示します。ビジネスのページ。したがって、ビジネスのバータブの平均値が0.5の場合、「なし」と表示され、1.2の値は「飲み物」と表示されます。
次に、すべてのビジネスページのティーザーを表示するビューが表示され、ユーザーはビジネスページのフィールドの結果で結果をフィルタリングできます。フィルタのオプションを表示するためのドロップダウンメニューが欲しいのですが、単一の値ではなく、配列内の各値に範囲を割り当てる方法がわかりません。これが私が現在持っているものです:
$options = array(
'' => 'Any',
'0' => 'None',
'1' => 'Drinks',
'2' => 'Food',
'3' => 'Both',
);
ご覧のとおり、ユーザーがフィルターのオプションとして「飲み物」を選択すると、floatフィールドの値が1のページのみが表示されます。ただし、ユーザーに関する限り、「Drinks」を選択すると、「Drinks」値またはfloat値が。のすべてのページがフィルタリングされます >.75 && <=1.5
。それを反映するために配列のオプションが必要です。したがって、次のコードは正しくありませんが、次のような効果が必要です。
$options = array(
'' => 'Any',
'>=0 && <=0.75' => 'None',
'>0.75 && <=1.5' => 'Drinks',
'>1.5 && <=2.25' => 'Food',
'>2.25 && <=3' => 'Both',
);
誰かがこれを行う方法を知っていますか?これが私の元の投稿よりも明確であることを願っています。
オリジナル:
少し前にdrupalフォーラムで質問したのですが、返事が来ていないので、ここの誰かが助けてくれることを願っています。select配列のモジュールに次のコードがあります。
$options = array(
'' => 'Any',
'0' => 'None',
'1' => 'Drinks',
'2' => 'Food',
'3' => 'Both',
);
ただし、問題は、各オプションが単一の値にのみ関連していることです。代わりに各オプションに範囲を割り当てる方法はありますか?その結果、0から1までの値はNoneに割り当てられ、1から2までの値はDrinksに割り当てられます。