簡體   English   中英

如何在CakePHP下拉菜單中顯示數組數據?

[英]How to show array data in CakePHP drop-down?

<!-- language: lang-none -->

Array
(
[0] => Array
    (
        [Doctor] => Array
            (
                [id] => 1
                [doctor_name] =>  Dr. Kazi Hasinur Rahman
            )

    )

[1] => Array
    (
        [Doctor] => Array
            (
                [id] => 2
                [doctor_name] => Dr.M. Zahid Hasan
            )

    )

[2] => Array
    (
        [Doctor] => Array
            (
                [id] => 3
                [doctor_name] => Dr.M.A.Malek
            )

    )
)

這是我的醫生。 我想將Doctor_name顯示為下拉列表,並在提交表單時使用id進行查詢。

在我的醫生模型中:

 public $displayField = 'doctor_name';

我的看法是:

<?php echo $this->Form->input('doctor_name', array('options' => $doctors)));?>

當您想在下拉菜單中使用模型中的數據時,將使用find('list') 在您的控制器中添加:

$this->set('doctorNames', $this->Doctor->find('list'));

因為您已經在模型中設置了displayField ,所以它將作為標簽獲取,id將是值。 正如應該的那樣。 另外,如果遵循命名約定並將變量名稱設置為$doctorNames ,則不再需要將options部分添加到View中,只需使用:

$this->Form->input('doctor_name');

它將產生一個下拉列表,其中包含所有醫生姓名。

當獲得一系列醫生時,使用$this-> Doctor-> find ('list')

這將返回一個鍵值數組。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM