Form APIを使用して外部キーから値が届くSELECT入力をプログラム的に作成するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/19825511

質問

表Bを参照する外部キーを持っているテーブルAがあります。表Aに関連付けられたフォームが、テーブルBから値が来る選択フィールドを持っています。表B.

表AとテーブルBの両方に、さまざまなタイプのエンティティが含まれています。

私は現在、エンティティリファレンスを使用するプログラムソリューションを探していますが、から新しいフィールドを追加する必要はありません Administration > Structure > <entity type>.

役に立ちましたか?

解決

私はこのソリューションを使用しました entity_load 次に、今のところ選択フィールドにオプションとしてロードされたエンティティを追加します。

$foreign_entity_items = entity_load('foreign_entity');
$foreign_entity_options = array();
foreach ($foreign_entity_items as $foreign_entity_item) {
    $foreign_entity_options[$foreign_entity_item->some_field] = $foreign_entity_item->some_other_field;
}

$form['some_form_element'] = array(
    '#title' => t('Some title'),
    '#type' => 'select',
    '#required' => TRUE,
    '#options' => $foreign_entity_options
);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top