1

Cakephp 2.3.0 の使用 ヘルパーの条件は次のとおりです。 1) 複数のフォームで多くのドロップダウン ボックスを使用する必要があり、すべてのコントローラーで loadModel を実行したくない (12) 2) からデータを取得する必要があるデータベース テーブル 3) テーブルのファイルをベイクしないことを考えています。4) カスタム mysql クエリを使用したい。

たとえば、countries という名前のテーブルがあり、ドロップダウンは key=>abbreviated name と name=>full name にする必要があります。

任意の提案をいただければ幸いです..

4

1 に答える 1

1

ヘルパーで関数を作成しました `

public function getDropDownList($table,$key,$value)
    {
        //$db =& ConnectionManager::getDataSource('default');
        $fields = $key.','.$value;
        $CommercialHeaders =& ClassRegistry::init('tablename');
        $sql = $CommercialHeaders->query('select '.$fields.' from '.$table.' as DropDown');
        foreach($sql as $val)
        {
            $countryList[$val['DropDown'][$key]] = $val['DropDown'][$value];    

        }
        //debug($countryList);
        return $countryList;    
    }

`そして、テーブル名とフィールドを渡してビューから呼び出しただけで、配列が生成されるため、appcontrollerで設定したり、requestActionを使用したりせずに問題を解決できます

于 2013-02-26T10:04:31.780 に答える